Skip to content

Development during GSoC 2015

Ivan Evgrafov edited this page Jul 1, 2015 · 51 revisions

On this page I will share my Activities and Objectives during this summer.

Weeks:

Week 1 (25.05 - 29.05)

Week 2 (01.06 - 05.06)

Week 3 (08.06 - 12.06)

Week 4 (15.06 - 19.06)

Week 5 (22.06 - 26.06)

Week 6 (29.06 - 03.07)

Week 1.

25.05

Objectives:
  • make Plot work with options by their names
  • test options (see prev)
  • update already existing code to copy-on-update

26.05

Objectives:
  • reduce complexity of Datablock#initialize
  • add tests for copy-on-update at least for Plot
  • add options handling for Dataset
  • write #clone for Dataset and Datablock
Activities:
  • options (by name) for Plot + tests
  • Datablock, Dataset, Plot copy-on-update

27.05

Objectives:
  • take a look at datasheets in Daru
  • update travis config with jruby
  • document Plot and Dataset
Activities:
  • add options handling for Dataset
  • write #clone for Dataset and Datablock
  • rethink updating datablocks
  • add tests for copy-on-update behaviour on modifying Plot options

28.05

Objectives:
  • take a close look at Hamster
  • use hamster to replace currently used containers (hash/array)
Activities:
  • update travis config with ruby 2.1 and 2.2 versions
  • create travis config to test against osx (Travis doesn't allow to create a matrix with both linux and osx machines, but config may be used to test gem on osx from time to time just replacing default config with it)
  • docs for Plot and Dataset

29.05

Objectives:
  • cover installation process in readme
  • update "about me" page on github.io
Activities:
  • replaced hash and array with hamster
  • covered dataset with tests

Week 2.

01.06

Objectives:
  • prepare blog post about last week activities
  • cover Plot#update with specs
Activities:

02.06

Objectives:
  • cover Plot#replot and Terminal with specs since some code is still untested
  • focus on staff features and methods from proposal to implement them before sharing the gem
Activities:
  • posted in blog about progress during first week
  • covered Terminal options handling with specs
  • covered Plot#update with specs
  • found and fixed an issue with plotting to file (Ruby didn't wait for gnuplot to finish plotting)

03.06

Objectives:
  • cover rest of Terminal with specs
  • focus on docs to make possible using gem by early end-users
Activities:
  • covered Plot#replot with specs
  • add some small fixes and methods mentioned in proposal

04.06

Objectives:
  • fix :file option in Dataset#initialize
  • think about returning Dataset#clone call into Plot
  • make Dataset#initialize less complicated
  • focus on docs to make possible using gem by early end-users
Activities:
  • covered Terminal with specs
  • fixed some Terminal's output features

05.06

Objectives:
  • learn more about iruby to use it in documenting (example notebooks)
  • test against osx (using travis)
Activities:
  • fixed issue with not updating dataset if data stored in datablock even if options should be changed
  • added iRuby notebook with svg plots from Gnuplot (requires some changes to iRuby to do so)

Week 3.

08.06

Objectives:

09.06

Objectives:
  • work on notebooks and samples
Activities:

10.06

Objectives:
  • try to move some parts to modules and include them into classes
  • add docs and see if there are some missing tests
Activities:
  • added two iRuby notebooks
  • added nested options handling for Dataset

11.06

Objectives:
  • prepare existing parts for sharing with community
Activities:
  • some of rubocop issues fixed
  • fixed a bug with Splot options (invalid inheritance)
  • created helper modules

12.06

Objectives:
  • add more axamples to notebooks
  • add notebook docs
Activities:
  • docs improved

Week 4.

15.06

Objectives:
  • begin development of multiplot
Activities:
  • added several notebooks
  • added notebooks readme

16.06

Objectives:
  • continue development of multiplot
  • add specs for error handling
Activities:
  • added multiplot skeleton
  • resolved issue #6 (waiting for gnuplot to finish images)
  • semi-resolved issue #3 (handling gnuplot errors)

17.06

Objectives:
  • start review session
Activities:
  • moved plotting methods to mixed in module to avoid duplications
  • developed plotting part of multiplot

18.06

Objectives:
  • review session
Activities:
  • added a notebook
  • reviewed symengine wrapper in Ruby

Week 5.

22.06

Activities:
  • fixed several issues found by Alexej

23.06

Objectives:
  • add iRuby support
Activities:
  • renamed gem 'pilot-gnuplot' -> 'gnuplotrb'

24.06

Objectives:
  • write blog post about last weeks
Activities:
  • added iRuby support

25.06

Objectives:
  • add examples
Activities:

26.06

Objectives:
  • add specs for Splot or Multiplot
Activities:
  • added multiplot example and accepted pull request from Alexej with vector field example

Week 6.

29.06

Objectives:
  • add plot add/remove/replace/update methods to Multiplot

30.06

Objectives:
  • add more specs for multiplot
  • add more specs for plots from daru
Activities:
  • added plot add/remove/replace/update methods to Multiplot
  • splitted Dataset#initialize into several methods (avoid complexity)

01.07

Objectives:
  • check code, specs and docs before midterm
  • try to make gem work on osx
Activities:
  • added more specs for multiplot
  • added more specs for plots from daru
  • fixed plot from daru
Clone this wiki locally