With Marios Isaakidis, I created a set of deadlines for the Winterface GSoC 
project.

It is possible that I will be completely offline during the evaluation period 
(I’m on vacation from 2014-08-08, and I’ll be in a small spanish village where 
I don’t know whether my OLPC will be able to connect to the wireless internet - 
last time the access point actually managed to crash my kernel), so this list 
is also meant as support for Steve to judge the success off the Winterface 
project. If nothing serious gets in the way, Florent should have made Steve a 
second mentor for Winterface in a few days - I started putting things into 
motion for that some time ago).

The deadlines are also available as html page in Freenet: 
http://127.0.0.1:8888/freenet:USK@um4cEaaGWlgdAK8gAFDJrqY2eiSM3fHxiPfMTu89coE,m2rG6gU~ISukN3S3qJtNwVxXr0giCtHvu8BPz605FxE,AQACAAE/winterface-deadlines/0/#sec-2

or from my inproxy: 
https://d6.gnutella2.info/freenet/USK@um4cEaaGWlgdAK8gAFDJrqY2eiSM3fHxiPfMTu89coE,m2rG6gU~ISukN3S3qJtNwVxXr0giCtHvu8BPz605FxE,AQACAAE/winterface-deadlines/0/#sec-2

(note the new URL: https://d6.gnutella2.info/freenet ← this is one of the cases 
where SSL is really useful ☺)

(Till now I did not write much on devl, because I’m swamped with stuff to do 
and decided to priorize info on IRC+Sone and helping Marios directly over 
giving mentor-comments here)

Enough preface, here’s the list.

#+title: Deadlines for the Winterface GSoC project

#+BEGIN_ABSTRACT
Winterface is a new Web Interface for Freenet implemented as plugin. Marios 
alias Prometheas alias misaakidis is working on it over the summer. We’re in 
the last few weeks and pieced together a list of deadlines required to finish 
GSoC successfully.
#+END_ABSTRACT

* Tasks
** Kill all show stoppers

- forward all not yet working links to fproxy
- link wiki to 
http://127.0.0.1:8088/USK@z6lnOx7PPe16P3Sobu1KM9jiLiIxdvE3L918QMVCLak,AmZ7RemmWcKM2-W4Zs38Ks511lRTsWleMj2mVAReB4E,AQACAAE/freenetdocwiki/17/
- add a visit-link in the fproxy page for Winterface which has a link to 
Winterface (the configured port).
- make the config entry for Winterface in FProxy nice (add a localizable string)

** make the Winterface bookmarks-workflow enjoyable 

- edit bookmarks conveniently
- visiting bookmarks which feels nice (progress info, content filters and 
everything which is possible to speed up getting the site)
- tracking bookmarks (i.e. show notifications at the bookmarks)
- lots of polish - like automatically uncollapsing a bookmark category when one 
of the contained bookmarks got updated.

** Further notes

- for opening in a new tab: Everything which forwards to fproxy should open in 
a new tab
- for the “talk to people” links: link to the subpages of the freenet social 
networking guide.
- polish: add a small javascript for reload winterface which checks whether the 
new winterface is available before reloading.
- make the rabbit in the top-left a clickable link to the winterface dashboard.
* Deadlines

- sunday 27.7.14: blockers are gone. I can click the App→Sone link in 
Winterface (if I have Sone running) to get to the Sone page of fproxy in a new 
tab. no restart or shutdown button in Winterface.
- wednesday 30.7.14: clicking away notifications, showing notifications for 
bookmarks and hiding a notification for an updated bookmark when its bookmark 
is opened.
- friday 1.8.14: notifications feel integrated.
- tuesday 5.8.14: visiting bookmarks feels nice (progress info, content filters 
and everything which is possible to speed up getting the site)
- friday 8.8.14: added lots of polish: To make this a reality, you need to use 
it. And step back and use it again. Try every path through the interface and 
take notes about what feels strange. Then fix all these.
- monday 11.8.14: do what is still missing. Here is the Suggested 'pencils 
down' date. Now take a week to scrub code, write tests, improve documentation, 
etc.
- monday 18.8.14: Winterface has a polished bookmark-workflow and now 
show-stoppers, and it has a freesite which describes its basics (similar to the 
freesite of Sone - better Winterface, but as information site (with text and 
such)). It is polished, the Readme is up to date and building works for others.

* The discussion (unpolished)
#+BEGIN_EXAMPLE
  <ArneBab> planning on Winterface and GSoC
  <ArneBab> there is one hard deadline: August 11.
  <ArneBab> that’s the first pencils down. Afterwards there should only be 
polishing and such.
  <ArneBab> August 18. is the firm pencils down: We cannot take anything into 
account for the eval after that.
  <ArneBab> so there are two and a half weeks left.
  <ArneBab> we can split the tasks for that
  <ArneBab> what’s needed to make Winterface usable.
  <ArneBab> we need: At least one use-case really finished and no complete 
show-stoppers.
  <ArneBab> (finished means: Much nicer to use than in fproxy)
  <ArneBab> The usecase it can fullfill is the bookmark-using workflow.
  <ArneBab> A show-stopper would be not being able to reach the plugins: 
Essentially the mockup-links we currently see on the winterface dashboard 
should all work.
  <ArneBab> (for the wiki we might have to use a jfniki-site: We don’t yet have 
the wiki in freenet)
  <ArneBab> most show-stoppers should be fixable with the workaround of 
forwarding to the relevant fproxy site - that way Winterface can be used even 
while parts are unfinished.
  <ArneBab> for the workflows to make nice
  <ArneBab> firstoff it’s finishing the bookmark-workflow: open a link, show 
update info, edit the bookmarks.
  <ArneBab> and add a bookmark by clicking on the bookmark-link on a freesite.
  <ArneBab> I don’t know whether it’s realistic to get plugin-pages integrated.
  <ArneBab> but I think it’s more important to have one workflow which works 
really well instead of 3 which work halfways.
  <ArneBab> also because it’s much more fun to have something which is really 
good in one respect and extend it into other areas than to polish many rough 
edges on something which tries to do everything
  <ArneBab> If we could get a whole round-trip of site-upload, adding 
bookmarks, sharing bookmarks on darknet and visiting bookmarks, that would make 
one of the basic and working features of Freenet more enjoyable again.
  <ArneBab> (site upload essentially just means folder upload)
  <ArneBab> (but it could also just mean flog helper)
  <ArneBab> (so integrating one plugin)
  <ArneBab> but then flog helper needs WoT, and we can currently do 
site-uploads with external tools (jSite)
  <ArneBab> a guide on using those might be enough to get the round-trip going.
  <ArneBab> so reduced version: Adding bookmarks and tracking sites via 
bookmarks.
  <ArneBab> this includes notifications because they are needed for tracking 
bookmarks
  <ArneBab> and lots of polish - like automatically uncollapsing a bookmark 
category when one of the contained bookmarks got updated.
  <ArneBab> to clean this up:
  <ArneBab> === kill show-stoppers ===
  <ArneBab> - forward all not yet working links to fproxy
  <ArneBab> - link wiki to 
http://127.0.0.1:8088/USK@z6lnOx7PPe16P3Sobu1KM9jiLiIxdvE3L918QMVCLak,AmZ7RemmWcKM2-W4Zs38Ks511lRTsWleMj2mVAReB4E,AQACAAE/freenetdocwiki/17/
  <ArneBab> - add a visit-link in the fproxy page for Winterface which has a 
link to Winterface (the configured port).
  <ArneBab> - make the config entry for Winterface in FProxy nice (add a 
localizable string)
  <ArneBab> === make the Winterface bookmarks-workflow enjoyable ===
  <ArneBab> - edit bookmarks conveniently
  <ArneBab> - visiting bookmarks which feels nice (progress info, content 
filters and everything which is possible to speed up getting the site)
  <ArneBab> - tracking bookmarks (i.e. show notifications at the bookmarks)
  <ArneBab> lots of polish - like automatically uncollapsing a bookmark 
category when one of the contained bookmarks got updated.
  <ArneBab> === / minimal ===
  <ArneBab> for opening in a new tab: Everything which forwards to fproxy 
should open in a new tab
  <ArneBab> for the “talk to people” links: link to the subpages of the freenet 
social networking guide.
  <ArneBab> Prometheas: do you think you can kill the show-stoppers till sunday?
  <ArneBab> polish: add a small javascript for reload winterface which checks 
whether the new winterface is available before reloading.
  -*- ArneBab now sees the freenet version in winterface - nice!
  <Prometheas> ArneBab: yes, would like to ask about where to place the link to 
Winterface, especially since not all users will have the plugin installed
  <ArneBab> I think for that there are 2 parts: (1) Have a freesite on 
Winterface which we can put into the default bookmarks.
  <ArneBab> and (2) have a small page in the plugins with a link to the correct 
port.
  <ArneBab> maybe also (3): add a menu entry, but that would clutter up the 
menu.
  <Prometheas> there is also this 
http://127.0.0.1:8888/config/freenet.winterface.core.WinterfacePlugin
  <ArneBab> the goal is to get people to use Winterface as the web interface 
they open by default 
  <ArneBab> Can you actually put a link there?
  <ArneBab> a first step would be to give it a label (so it isn’t called 
ConfigToadlet.freenet.winterface.core.WinterfacePlugin.label, but rather 
Winterface)
  <Prometheas> great
  <ArneBab> I think you can put anything in a site used by the [visit] button 
in the plugins list.
  <ArneBab> and for polish: make the rabbit in the top-left a clickable link to 
the winterface dashboard.
  <ArneBab> Prometheas: the node control in the bottom right does not work, 
yet. Can you make it work?
  <Prometheas> "I think you can put anything in a site used by the [visit] 
button in the plugins list." where is that?
  <Prometheas> haven't checked it yet, there is access to the Node etc, I think 
it will be straightforward
  <ArneBab> have a look at the UPnP plugin
  <ArneBab> for shutdown you can use an FCP message
  <Prometheas> ok
  <ArneBab> I don’t see one for restart, though.
  <ArneBab> so maybe take out the restart button.
  <Prometheas> let's see if it is possible
  <ArneBab> so sunday: blockers are gone. I can click the App→Sone link in 
Winterface (if I have Sone running) to get to the Sone page of fproxy in a new 
tab.
  <ArneBab> no restart button in Winterface, the Shutdown button calls shutdown 
via FCP.
  <ArneBab> all visible-links are clickable. non-implemented functionality 
links to fproxy.
  <Prometheas> there seems to be no FCP message for restarting a node. On the 
other side, there is a message for plugin reloading
  <Prometheas> and subscribing to a USK, which can be another way to implement 
the updated bookmark notification
  <ArneBab> just cut out the restarting of freenet from Winterface then.
  <p0s|xor-freenet> (separating UI from the core seems a logical thing to do 
for a proper user interface, should be encouraged, yes)
  <p0s|xor-freenet> (so use FCP for everything)
  <Prometheas> is this wiki page https://wiki.freenetproject.org/FCPv2 up to 
date?
  <ArneBab> then till wednesday: clicking away notifications and editing 
bookmarks *nicely*.
  <ArneBab> replace till wednesday: clicking away notifications, showing 
notifications for bookmarks and hiding a notification for an updated bookmark 
when its bookmark is opened.
  <ArneBab> on wednesday notifications should feel integrated.
  <Prometheas> removing fred dependency is a very big task
  <ArneBab> don’t try to remove it completely.
  <ArneBab> just don’t make the dependency bigger.
  <Prometheas> especially since there are no messages for everything (eg 
bookmarks)
  <ArneBab> don’t make the dependency bigger *if you can avoid it*
  <ArneBab> there are some structures we obviously want to reuse.
  <ArneBab> (because they are user-data)
  <Prometheas> there is the QueueHelper class in Winterface to start with fcp
  <ArneBab> sunday = 27.7.14, wednesday = 30.7.14, friday = 1.8.14
  <ArneBab> tuesday 5.8.14: visiting bookmarks feels nice (progress info, 
content filters and everything which is possible to speed up getting the site)
  <GitHub164> [plugin-WebOfTrust] xor-freenet pushed 1 new commit to master: 
http://git.io/uj3iOw
  <GitHub164> plugin-WebOfTrust/master 6b06e3c xor-freenet: Revert "Fix WOT not 
starting due to DatabaseMaximumSizeReachedException:"...
  <-- GitHub164 (~GitHub164@192.30.252.42) hat #freenet verlassen
  <ArneBab> friday 8.8.14: added lots of polish: To make this a reality, you 
need to use it. And step back and use it again. Try every path through the 
interface and take notes about what feels strange. Then fix all these.
  <ArneBab> monday 11.8.14: do what is still missing. Here is the Suggested 
'pencils down' date. Now take a week to scrub code, write tests, improve 
documentation, etc.
  <ArneBab> monday 18.8.14: Winterface has a polished bookmark-workflow and now 
show-stoppers, and it has a freesite which describes its basics (similar to the 
freesite of Sone - better Winterface, but as information site (with text and 
such)).
  <p0s|xor-freenet> .... WOT status report for today: just fixed another 
corruption issue :) the number of issues blocking a release is now down to 7, 
of which 2 can be substracted because they are caused by the same underlying 
issue very likely, so effectively we are at 5 issues. i would say its 2-3 weeks 
of work, because one of them involves significant refactoring. but it is needed 
to allow the web interface to be de-synchronized, which will make it a lot
  <p0s|xor-freenet> faster because it won't block when WOT background 
processing is running
  <ArneBab> still 18.8.14: It is polished, the Readme is up to date and 
building works for others.
  <ArneBab> p0s|xor-freenet: nice!
  <ArneBab> Prometheas: do you have the date-based paln?
  <ArneBab> plan
  <Prometheas> yes, and a different strategy for communicating with fred
  <ArneBab> yepp - but for future functionality.
  <ArneBab> don’t go into refactoring everything which exists. You don’t have 
the time for that.
  <Prometheas> ok
  <ArneBab> you should trigger a release at every milestone/deadline.
  <ArneBab> and do increase the version-numbers: You’re adding real 
functionality.
  <p0s|xor-freenet> ArneBab: thanks... we're getting there... i'm not happy to 
have the large blocking issue of refactoring remaining but its necessary. 
explained it in depth to operhiem1 yesterday, read the backlog if you're 
interested
  <ArneBab> (though the filename can simply stay winterface.jar to allow for 
automatic updating)
  <ArneBab> p0s|xor-freenet: I already read it ☺
  <p0s|xor-freenet> ArneBab:  ok fine :)
  <ArneBab> Prometheas, p0s|xor-freenet: But now I need to get to bed. My night 
ends in less than 4 hours.
  <ArneBab> cu and happy hacking!
  <p0s|xor-freenet> ArneBab: see you tomorrow, sleep well
  <ArneBab> you too!
  <Prometheas> good night!
  <Prometheas> and thank you for breaking down the tasks to deadlines
  <ArneBab> good night to you, too!
#+END_EXAMPLE




-- 
Unpolitisch sein
heißt politisch sein, 
ohne es zu merken. 
- Arne (http://draketo.de)


Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Devl mailing list
Devl@freenetproject.org
https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl

Reply via email to