Hackfest2015

From Inkscape Wiki
Revision as of 18:17, 12 November 2014 by Tavmjong (talk | contribs) (→‎Date)
Jump to navigation Jump to search

This page details the planning of an Inkscape Hackfest in April 2015


Discusson

See the Board_Meetings page for minutes of past discussions and the time and place of the next discussion.

Description

A hackfest! We will work on Inkscape bugs, new features, and packaging as well as website issues; in fact anything that can benefit from developers and users being physically in the same space.

Maybe even some Gtk+ issues: http://wiki.inkscape.org/wiki/index.php/GTK%2B_Issues

The Pitch

Inkscape enables digital artists to reach the limits of their creativity as well as to produce professional quality work. The Inkscape software is provided for free to all, as a fully open source, community-developed, socially owned project.

We need your help to make sure Inkscape has a bright future!

Our developers work remotely in all corners of the world and rarely have the chance to work together in person. We've noticed that in-person meetings bring about stronger relationships and more creative results. Being together in one room allows us to work on things that are harder to do remotely: designing a new plugin/extension system, teaming up to squash particularly nasty bugs, authoring better user documentation, and planning where to take Inkscape development in the future.

We will be meeting before|after the Libre Graphics Meeting (April 29 to May 2, 2015) in Toronto|Boston for two|three days of intense hacking.

Please consider donating to cover travel, room, and board so our volunteer developers can attend the hackfest in person.


  1. TODO: Needs some photos of our developers, or images of what we'll be working on

Date

Just before or after the Libre Graphics Meeting 2015 (LGM2015) which takes place from April 29th through May 2nd 2015 (note: email states 30th through 2nd but an email on libre-graphics-meeting states that one day has been added at the beginning).

Schedule

A sketch of what might happen on hackfest days, 2 or 3 days of things should be planned.

a) Social meeting b) Pre-lunch presentations c) Lunch d) Pure hacking e) Dinner f) Late night hacking

Location

We are considering two places:

Toronto

Co-locating with LGM.

Advantages:

  1. Simpler travel (for those attending LGM).
  2. No need for US visa.
  3. Cheaper than Boston?

Boston

Advantages:

  1. Martin is local.
  2. Many possible sites.
  3. Large Free Software users community.

Venue

Technically the best location is the MIT campus in Cambridge, Massachusetts. The SIPB computing student group has been contacted in order to get something organised. Other contacts are also available should SIBP not work out.

Area

The Boston/Cambridge area hosts many meetings, hackfests and Free Software events. It is both the home of the Free Software Foundation in downtown Boston, many software related companies involved in Free Software such as Red Hat, Canonical and Google as well as hosting very many large Universities with competent computer science departments.

The area is packed full of sizzling restaurants and other events for social activity.

Stay

The venue can be commuted to via the backbone of the MBTA transport network, the Red Line. Any hotel /outside/ of Cambridge and Boston centers but on this Red Line should be both affordable as well as accessible. Events should consider themselves based on this line too.

House sharing should also be possible. Martin Owens is a local who is inviting a developer to stay for the event. others may be available too.

Budget

We had 8 attendees at the last LGM, and are hoping for perhaps 12 people this time. Roughly, assuming costs will be in the $1000-2000 range per person for travel, room, and board, that gives a budget of $9-18k

To get more specific we'll need to:

 * Estimate of hotel costs per night:  $50 per person for shared double in two star hotel, $30 per person in hostel
 * Estimate of airfare costs from Europe ($900), West Coast ($750), East Coast ($300), etc.
 * Plan a daily food/incidentals stipend amount (~$30)

Cost estimate for 3 days pre-LGM in Toronto:

* From Paris: airfare $900 + $200 hotel + $100 food = $1200
* From Boston: airfare $300 + $200 hotel + $100 food = $600
* From Zurich: airfare $900 + $200 hotel + $100 food = $1200
* From Los Angeles: airfare $750 + $200 hotel + $100 food = $1150


We're considering a model similar to what we did with reimbursement limits for the GSoC reunion:

* Up to $2000 each for Inkscape developers who have contributed for 3+ years and > 200 commits  (About 18 developers qualify, not all currently active)
* Up to $1500 each for Inkscape developers who have contributed for 2+ years and > 100 commits  (About 17 additional qualify)
* Up to $1000 each for Inkscape developers who have contributed for 1+ year and > 50 commits   (About 24 additional qualify)
* Up to $500 each for any Inkscape contributor listed in AUTHORS file with at least 10 commits by Jan 1, 2015 (About 50 additional qualify)

Sponsors

Finding local companies who might like to sponsor the event, help out with feeding people or bringing them to attend can be documented here.

maybe if we had some kind of form letter folks could give to their employer i save you this much $$ per year in adobe whatever license fees. would you support my work for this company by contributing some percentage of that back to the inkscape project

Sponsors' interests

It would help a lot if we have specific ideas about how to compensate sponsors, what they would be "buying".

Interests and offerings

  • PR among users
    • News item with clear marking of who sponsored the event
  • Improving a product that they ship
    • Work on specific bugs may be very tricky
    • offer to work on general code improvement (focussing on refactoring/ease for devs to develop new things, for example) seems good
  • Improving a product that many of their employees use
    • Work on specific bugs may be very tricky
    • offer to work on general code improvement (focussing on stability, for example) seems good
  • PR among coders
    • Clear PR during event
    • Making contacts with development team
    • News item with clear marking of who sponsored the event

Action items

Date Owner Item
15 sep 2014 Karen Sandler (SFC) [DONE] Could inquire if RH and Google can sponsor
15 sep 2014 Bryce [DONE] Get the fundraising doc posted on our website
15 sep 2014 Bryce Once we have things more nailed down: inquire with samsung for hackfest sponsorship
15 sep 2014 Martin Owens Hear back from LGM about Torronto co-sponsorship
15 sep 2014 ScislaC Contact userbase for interest in the hackfest
15 sep 2014 ScislaC [DONE] Get a list of [companies using inkscape]
15 sep 2014 Tav [DONE] Summarize and mail devlist
20 sep 2014 Tav [DONE] Set up a new wiki page for planning second Hackfest w/ RedHat
20 sep 2014 Bryce [DONE] Draft a preliminary promotional fundraising blurb
20 sep 2014 ryanlerch Work on a video for fundraiser
20 sep 2014 everyone [DONE] Consider indiegogo vs. hosting our own paypal donation page
15 oct 2014 doctormon Decide plan for implementing website/db support for fundraiser campaigns
15 oct 2014 karen Can we use Inkscape's existing paypal account or should we set up a separate one for fundraising
15 oct 2014 Mockup layout for a fundraiser/donation page (using text from Pitch)
15 oct 2014
15 oct 2014
15 oct 2014

Brainstorm area

Put things here that you think could use a bit of discussion/thought.

Places to announce the fundraiser, once it's set up?

  • Inkscape's g+ page
  • inkscape-users@
  • twitter
  • dA
  • the website
  • <karenesq> I bet LWN would be interested
  • <doctormon> Possible interest: http://zipfelchappe.readthedocs.org/en/latest/
  • <ryanlerch> i can promote on inkscapetuts and fedoramagazine too

Tasks to tackle

What can we hack on? To me (Johan) what seems nice are tasks that become more managable/fun/... and with higher chance of completion (maximum one day) when done in a group. Before determining specific tasks, what kind of tasks should we try to tackle?

  • Fleshing out documentation
    • Code documentation
    • Architecture docs
    • Coding howtos
    • Tutorials
    • User documentation
    • Translation of same
  • A bug that requires knowledge of large part of codebase.
  • Writing test cases
  • Simple repetitive refactoring or code clean up that can be parallelized and may not be so much fun alone. Examples:
    • make sure every file contains standardized and correct copyright notice,
    • eradicate all use of gboolean/TRUE/FALSE,
    • move towards C++11 by =delete on copy-constructors instead of making them private+undefined).
  • A more complicated refactoring that requires discussion.
    • Conversion of build system
    • Performance optimizations
    • Coordinate flip.
  • A feature that can be split into parallelizable tasks possibly with different skills required, for example:
    • combination of UI, backline math stuff, usability/behavior stuff.
    • Infrastructure setup
  • Design / strategy collaboration
    • SVG 2 fallbacks
    • New plugin/extension system
  • Planning
    • Post-1.0 roadmap definition
    • Conference attendance for upcoming year
    • Future hackfests :-)

For the drunk hacking sessions:

  • Fun stuff, obviously. So perhaps a quirky feature, and see next day if it lead to something usable.

Participants

We aim for around 10 people.

Who do we expect to join (not remote), what kind of people?

  • Seasoned Inkscape developers? Yes.
  • More recently joined Inkscape developers? Yes.
  • Coders unfamiliar with Inkscape? Possibly one or two. Local students, e.g.
    • Good programmers with experience?
    • New programmers with little experience?
  • Users? Probably none that don't fall in other categories
    • Graphic designers?
    • Technical drawers?
    • 'Powerpoint' figure drawers?

We can make a list of possible tasks for each of these groups.

For the first hackfest, I (Tav) would keep it open to anyone, but only promote it to people already familiar with the Inkscape code base.

Help for newcomers

  • Provide a VM image with: Inkscape's trunk ready to compile. Preferably with clang so one can run clang's static analyzer and quickly get a nicely formatted report of potential bugs that are generally easy to fix (i.e. null-ptr checking, etc).
  • List of simple tasks

Non-coding stuff

Some ideas for socializing and getting away from PC screen

  • Karaoke :)
  • Board/card games
  • Run around town
  • Movie
  • Pub