Blogs from WikiToLearn

Bells and whistles from the WikiToLearn Community

  • WikiToLearn.org
  • WikiToLearn Stats
  • Community Portal
  • Join us!

What’s next for WikiToLearn?

13 August 2018 by dcarrara Leave a Comment

Google Summer of Code is finishing and many things have been done on WikiToLearn since previous post. A little recap is needed.

Talking with mentors has been crucial because they told me to focus on finishing CRUD interaction with API backend instead of working on “history mode” viewer.

On the CRUD part, users now have full control of courses and chapters, they can:

  • Edit courses title
  • Add new empty chapters to a course
  • Reorder course chapters
  • Edit chapters title
  • Add new empty page to a chapter
  • Reorder chapters pages
  • [WIP] Write content of a page

Chapter editor have the same UI of course’s one because you can do similar actions in both of them. Here you can see a real web app screenshot of it

Chapter editor user interface

Now there is some important work to do: let users write organized content in a useful and easy manner.
They need an editor that lets them insert:

  • Math formulas (with real-time compiling and rendering)
  • Theorems and demonstrations
  • Images

For these tasks we make use of CKEditor (now at the 5th version, compatible with our build system), we have to create/use existing plugins to let users write beautiful content ready to be read.

The difficult part is that this information needs to be structured to be easily saved and reused. I read most of CKEditor docs and I integrated it in our webapp, I prepared a local repo for it because we need to plugin some custom modules for make it working with math, images and with our data structure and we have to lock-down some features we don’t use. It is a bit difficult to know which part has to be touched in order to make it working but I am on the way because I understood CKEditor fundamentals by reading the docs.

The work on WikiToLearn webapp will continue even after the end of GSoC, I’ll let you know how it goes.

Filed Under: Senza categoria

WikiToLearn web app course editor almost done

10 July 2018 by dcarrara Leave a Comment

Hi, it’s a bit of time that I didn’t write a blog post and many things on WikiToLearn ecosystem happened. Course editor mode is almost finished: now you can add, remove and edit chapter on a course, with new revamped Dialog and Modal components for confirming and editing views. You can see it below in action.

https://blogs.wikitolearn.org/wp-content/uploads/2018/07/Screencast-from-10-07-18-101633.webm

These works needed an update on the API backend and some discussion with mentors so they took some time to implement. (because you know, _etags…)
I introduced a feature not present on previous Modal and Dialog compoents that dismiss them on clicking outside their view. This is important because Modals which haven’t “confirm” or “dismiss” buttons couldn’t be closed before.

Another important work has been done on making typography fluid. When resizing the window the typography should change little by little and media queries aren’t enough. This has been done using viewport units, so font size change smoothly (check https://www.youtube.com/watch?v=Wb5xDcUNq48&t=2s for more information).

Now WTLIcons are clickable, more styles have been fixed and PWA banner is displaying again!

Now we can work on page editor and course history viewer!

Filed Under: Senza categoria

GSoC 2018: First period summary

14 June 2018 by dcarrara Leave a Comment

Hi everybody, it has been a month since I started working on WikiToLearn PWA for Google Summer of Code program and many things happened!
WTL frontend needed some improvements in terms of usability and functionalities. Course needed a way to update their metadata: title and chapters order for example
So I implemented a work-in-progress EDIT MODE, as you can see below. You can drag chapters, insert new ones and/or modify course title.

Now that editing structures works, I started to write some unit and integration tests. I had to change the current setup to make it working: PhantomJS is no longer maintained so I replaced it with Chrome Headless for now.
New components have been added: Snackbar for displaying messages, Error component has been rewiewed and it is available globally by setting the “error” variable from any component.

https://blogs.wikitolearn.org/wp-content/uploads/2018/06/Screencast-from-14-06-2018-121312.webm

One problem regarding OAuth2 authentication was that the token was expiring without being refreshed automatically. Now the PWA can detect if a token is expiring in little time (thanks to @crisbal and its vue-keycloak package) and refresh it.
As of now, it is a very great experience, i learned a lot using VueJS, mentors helped me a lot by keeping me focused on what needs to be done now, and what can be delayed after. Thanks a lot all.

Filed Under: Senza categoria

Summary of my first two weeks at GSoC

27 May 2018 by dcarrara Leave a Comment

Hi everybody, first two weeks are gone so I am going to do a little summary of what I did and what’s next!
WikiToLearn frontend needed a easily way to navigate between courses, so I coded a little pagination component that make transition between pages more user-friendly. This component can be reused in other scenaries too because it is flexible.


Frontend needed a way to know if there are pending network requests so I introduced a little animation when requests spawn, hiding it when they finish.

https://blogs.wikitolearn.org/wp-content/uploads/2018/05/Screencast-from-14-06-2018-114622.webm

Migration to webpack 4 has been done with success, build time is decreased by 30-40%, and bundle size is lower too! From 472kB to 325kB!

Initial work to include WorkBox, a JS library to handle service workers, has been done by replacing old sw-precache plugin.
And what’s about our user’s data? I made a standalone privacy policy page to show where your data goes and how they are used in our application.

And so what’s next?
We need to focus more on usability and make courses and chapters’ structure editable. Then we can set up all for unit and integration tests. We can update some dependencies’ configuration too to cut off a few kB of resources and seconds of building time.

Filed Under: Senza categoria

The 2017 GSoC Mentor Summit

26 October 2017 by Riccardo Iaconelli Leave a Comment

I am wrapping up the ideas after the Google mentor summit 2017. In spite of having mentored my first GSoC student in 2008, this is the first time I ever attended this summit. There were ~300 mentors representative of many different open source communities. A triple-concentrate of all the main open projects in a not-too-noisy environment (unlike e.g. FOSDEM) – all in all, it has been a very pleasant experience!

I also took a few more days to visit the Mozilla offices (shout out to Micheal, Havi, and of course Potch for being so welcoming), visit the Internet Archive and in general have follow-ups about the discussions generated at the summit.

Highlights from the conference

The conference was an “unconference”, so sessions were not precisely defined. I have attended many, but here are my true highlights:

  • Running hackathons
    Extremely interesting session – where I gave some advice on how we run events in KDE, and we discussed how to attract open source contributors and create a productive environment around it, where even newcomers are enabled to have an impact. Great ideas for the future!
  • Collaborative education
    In this session, run by Alessandro and me, we discussed tools for implementing collaborative education resources, compared to simply producing open educational resources. The difference is simple, and can be understood with an example: you have a similar difference between simply adding an open license to your code or following an open and transparent development process, where other can participate.
    The latter brings many more exciting possibilities to build, as a community, something great, and it is what I believe to be the future of education. WikiToLearn was of course a main topic in this session.
  • Git(hub)(lab)(…) and new collaboration tools for opensource
    This last discussion started as simply “tools for automating git workflows”, including ML-powered bots to triage and categorize issues, and turned into a general discussion around tools, infrastructure and workflows around git. This question is very much felt in many open projects: where and how do you store your code? We carried it on to a new session run by Alessandro and Boudayan (where I was unfortunately not present), and kept discussing it throughout the whole summit. I interviewed many developers from very different communities to understand their take on the matter.

My peronal take on git in open communities (preview)

This is in no way meant to be a concrete proposal, but not even a rant – simply a primitive thought on a very complex issue. I think that “how we work together” is currently the most challenging problem affecting the KDE commmunity, and it should be handled as such.

I think that Paul Adams came up with a great blog post this summer, a TLDR of the post could be (sorry Paul for the extreme synthesis!): if you adopt Git, you cannot continue to work like you did on SVN – the price you pay is the isolation and fragmentation of the development community. I fear that KDE, just like other “traditional” open source communities, didn’t see this transition happening before their eyes (after all, it was just a tool switch for them), and continued with the traditional workflow of the centralized repository. This is understandable, as we’ve been simply continuing to work like we used to, but we didn’t see how “Open Source” was becoming a standard for the new generations, and with it there came an associated, standard, way to “work in the open”. Personally, it took me a lot of time and a lot of talking to young developers to understand how other communities use tools for open source such as Gitlab, and why this is so radically different than what we can provide with our git.kde.org installation.

This is reflected in the final composition of the community – the big core formed during the golden age of SVN, and, as time progresses, is undoubtedly aging. We have to accept that nowadays most open source communities don’t work like we used to ten years ago, and it is imperative we figure out a way to evolve our workflow without betraying our values of shared and open governance. What are the young kids doing? Why are they doing that? What lessons can we learn from all these git natives?

The side-track

As always, the most interesting part of the conference happened in the corridors. In particular, I have been working with the developers of Rocket.Chat to show them the work we’ve been doing on Ruqola. They were very happy to see the development in this direction, and they showed me RocketChat+, a great newly released React Native mobile application for Rocket.Chat, so that we can chat reasonably even in mobility. It seems like we’re getting closer to a point where Rocket.Chat can be an OSS replacement for Slack! Another feature request I have managed to ask (it is a real blocker for us!) is a way to do proper SSO authentication (e.g. OAuth) outside the browser, so that we can have all of our userbase logging in the chat system with a unified identity, and the possibility of properly linking different identities. They are tracking this second issue here, and my hopes are up! 🙂

The work was not over when the Summit finshed. We’ve been brainstorming with a representative of GFOSS (a Greek FOSS-related organization) to improve their open education systems with the help of WikiToLearn. During the last days Alessandro and I managed to squeeze in a visit Mark Graham at the Internet Archive, to figure out how to best develop and preserve educational material.

Thanks a lot to KDE e.V. and Google for sponsoring my flights and allowing me to participate!

Filed Under: Senza categoria

  • 1
  • 2
  • 3
  • Next Page »

Recent Posts

  • What’s next for WikiToLearn?
  • WikiToLearn web app course editor almost done
  • GSoC 2018: First period summary
  • Summary of my first two weeks at GSoC
  • WikiToLearn GSoC goals and expectations

Tags

#Akademy #FSFE #QtCon #QtCon2016 #wtlatAkademy akademy2016 christmass foss Importation_Working_Group Interview kde knowledge openbooks Reports TeXLa WikiMania 2016 wikitolearn WikiToLearn1.0 WikiToLearn IndiaConf wtl

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org

Copyright © 2021 · Enterprise Pro Theme on Genesis Framework · WordPress · Log in

Utilizziamo i cookie per essere sicuri che tu possa avere la migliore esperienza sul nostro sito. Se continui ad utilizzare questo sito noi assumiamo che tu ne sia felice.Ok