#EL30 Technical: How I created my task

My task uses tables, views and a page on gRSShopper. If you want to try it yourself, here is my stuff: http://x28.privat.t-online.de/372/x28stuff.sql

  • go to cPanel > Databases > phpMyAdmin,
  • click your gRSShopper database
  • click Import, browse to the downloaded .sql file, scroll down and click OK. It should replace the tables x28term and x28week, and add the views x28term_html, x28week_html, and a new page. I prefixed everything with ‘x28’ to not get messed with your own stuff. Of course I tested it but still, I don’t fluently speak SQL and hope I won’t break anything. Proceed at your own risk!
  • go to the new page called “an x28map starter file” and publish it.
  • go to the new view “x28week_html” and change both occurrences of mmelcher.org to your own domain (because Javascript won’t load “cross origins”).

Unfortunately, it does not work with https (since the location of the javascript is on http). So, if you have a forced redirect to https in your .htaccess (which happened to me recently!), feel free to copy both the Javascript and CSS file to your own site. (But then don’t forget to watch my Github for updates.)

Hammer, screwdriver and a cog

Posted in EL30 | Tagged | Leave a comment

#EL30 Graph task

Task 2 in the Oct 30 newsletter said we should create a task for other participants of this course.

My task is related to week 3 about Graphs. While Frank Polster observed that for some graphs it might be a stretch to think of knowledge, the following example should make this easier: “think of knowledge as a graph”:

It involves some concepts from the synopsis texts, and you should connect and annotate them.

1. Click on a selected week from this list -1 Getting Ready, 0 E-Learning 1 and 2, 1 Data, 2 Cloud, 3 Graph, 4 Identity, 5 Resources, 6 Recognition, 7 Community, 8 Experience, 9 Agency, and you will find a list of terms.

2. Copy and paste them into a .txt file, and import them into a concept map application of your choice.

  • for Cmaptools by cmap.ihmc.us, I made a video instruction on Youtube some time ago;
  • or, for my own tool http://condensr.de/download-page/ you may just drag and drop the text into the map window that opens when you start the application.
    • or, you may just copy the text and paste it (Edit menu > Paste),
    • or, you may drop the icon of the .txt file from your file explorer into the map window;

    If you want help, don’t hesitate to call me directly!

  • For limited functionality, you may also use the demo version which should open when you click on “Preview” above the terms list.

3. Connect and annotate the terms.

The terms have been extracted from Stephen’s synopsis texts by a corpus linguistics tool called AntConc, and were loaded on my gRSShopper instance. If you want to view a sample of a map that I quickly completed for week -1, click this link: http://x28hd.de/demo/?el30sample.xml

Screenshot of a concept map


I did some annotation by inserting extra (red) items. In the full version of my tool, you can put annotations into the right pane (which is the biggest benefit of this tool).

Posted in EL30 | 2 Comments

#EL30 Week 3: Plumbing?

Because I’m an IT professional, it bugs me when some peers urge all the rest of the world to adopt our way of thinking. Probably they are confusing two important things which may indeed appear quite similar:

  • To be able to talk to the other side (IT staff, devices, artificial co-workers, …),
  • or to empathize with them and learn how it feels to “be” one of them.

While the latter is certainly a rich experience that I would recommend everyone to try out some time, it absolutely must not be required to accomplish one’s tasks. That is what good user interfaces are made for, and the division of labor between operator controls vs. the stuff ‘under the engine hood’. (If you think the reality of my own tool contradicts this aspiration you might be right but please do tell me when you find a flaw.) And it is not only ethically questionable to urge people into alien thinking, it is also tactically silly, because once the typical aversion and blockage is in place, the ‘getting into’ becomes just more impossible.

Perhaps a little comparison might illuminate for my peer nerds how difficult this ‘getting into’ mathematical thinking might be. Imagine you leave your keyboard and join some dancers or singers. The choir mistress starts the rehearsal warm-up with exercises for relaxing, breathing, and then perhaps nonsense syllables such as “bla ble bli blo blü” which you repeat many times. (Already rolling your eyes?) Then she says “The room is full of Ms flying around. Everyone catch one of them and hum it.” Are you able to let go of your reservations and engage with this foreign world? (Disclosure: I myself were not able in the case of dancing, just with singing.)

So when the graph theory nerds insist on their swollen terminology such as “vertices” and “edges” for their simple items and lines even when talking to other disciplines, this is IMHO a very unnecessary scaring and excluding, and it is not the only way to the future.

Some angulate tubes

By Flickr user naughtomation, CC-BY

On one hand I understand very well the future role of plumbing and fiddling and tinkering — e.g. changing parameters in Jupyter notebooks and trying again. But OTOH, this ‘plumbing’ should not literally mean that I have to repair the red or blue taps for hot and cold water, but rather, to use the water for cooking and then ‘change the parameters’ to experiment with new meals. Yes, plumbing where no algorithms exist yet, this will probably be the job left over for humans.

To co-exist with the algorithms, then, it is necessary to be able to talk to them and to their developers. Talk across the divide, not trying to blur the division of labor. Most prominently this means, to understand why, and get used to that, IT staff and devices are sometimes so annoyingly stubborn; for example, when end users talk about their colorful fuzzy subject matter, we insist in asking back until we can model their stuff into our rows and columns.

A simple example how the co-existence between human and machine could have worked, but failed, is just this unfortunate RSS from last week: It is written in XML which is intended for the machine and should work behind the scenes while users are reading their HTML pages. But by trying to blur this clear division (e.g. by applying fancy style sheets), gradually a total mess and confusion emerged, which, of course, helped the platforms to suffocate this dangerous democratic decentralizing technology, such that even a politically aware historian finally gave up.

Posted in EL30 | 2 Comments

#EL30 Week 2 Clouds and Jupyter

For this week’s topic, the Cloud, I like Stephen’s comparison: “Computing and storage as commodities like water or electricity”, although I have not been using much personal cloud storage, and no cloud computing at all.

I first encountered the idea of a cloud when we drew pictures of our computer networks where they were based on the public packet-switching telecom services. Unlike our costly leased lines, we did not exactly know what trajectory they followed, and the telecoms emphasized that this “doesn’t matter“, either, because they would be rerouted if one part of the network was congested. So we just drew the whole network as a cloud, with short access lines entering and exiting the service.

Then later the cloud was for me the aggregate of all the services to which I had uploaded my stuff, and I enjoyed how easy I could retrieve it — not particularly that I could access it from different devices, but because it was published and therefore somewhat curated, and distributed among specialized services for bookmarks, blog posts, pictures, library items, etc. The idea that I could make my private raw files accessible from two devices, was never too exciting for me, and the notion of ‘syncing’ seems to me mostly as a confusing distraction: either I use it for the simple transfer from A to B, or for a crippled, dependent device C. That’s why my cloud storage is minimal.

Now the week’s synopsis talks about “new resources [that] allow us to redefine what we mean by concepts such as ‘textbooks’ and even ‘learning objects’”, and the presentation 481 discussed living resources such as Jupyter notebooks which reminded my of the “Try it Yourself” tutorials of W3Schools, or in particular of a great demonstration by Bret Victor.

I have long been fascinated by this idea of interactive resources that don’t just show one page at a time, but (side by side) some control or context and some effect or details — which seems promising for learning. (Disclosure: My free tool does something like this.)

Anyhow, if I can try the Jupyter notebooks right on the web, I will probably soon consume more cloud computing power.

A planet with clouds as moons.

Posted in EL30 | Leave a comment

#EL30 Week 1 From documents to data

Documents to data — for me, this is not an easy farewell.

It is not that I conceived ‘data’ as a setback in the hierarchy of data – information – knowledge – wisdom. This meaning of data is just one of the two possible senses: the one that suggests that data is just the substance, the raw material that we ‘processed’ when IT was still called EDP. While the glimpse into Learning Analytics on Wednesday still sounded like they see data like the tons of sand that clueless gold miners sift through to find some nuggets, Stephen’s last video featured a very different sense of data: like ‘facts’ which are ‘linked’ in Berners-Lee’s semantic web, and which are shared via the various initiatives to open the results of publicly funded research data for reuse and validation. This is an approach that must be applauded, of course, despite there is a danger that unstructured (unlinkable) ‘data’ get neglected.

What worries me is that the addressability, manageability, and transparency of the document files and webpages is lost — and with it a certain level of autonomy/ majority. In the document model, when you were about to click a link, you were able to see an address of an html file, composed from the gigantic world-wide hierarchy of top-level domain, subdomain(s), hostname, folder, subfolder(s), and page file name. In modern page views, it is totally obscure from where the Javascript loads its tons of ingredients — which, of course, is intended by the platform owners to better patronize you in minority.

It reminds me of the time when library information or, say, chemical abstracts were retrieved from OPACs or other special database hosts through an X.25 session and a login window, rather than clicking directly. OK, database rows aren’t typically addressed separately. But letting go of files and folders, also my own responsibility of backup and restore becomes much more risky. While I use to just right-click and copy my .accdb MS Access database file before I start a risky operation, I don’t know how I would repair the MySQL database on Reclaim Hosting if it scrambled; even if I recovered the component files, I’m not sure how I would recreate the whole again (which is greater than the sum of its parts).

The typical cylindric database icon, as a jigsaw puzzle, with some of the scrambled pieces reassemmbled and some  not.

Scrambled database

OK, maybe I am more relying on my file system than a modern user would do (e.g. my notes are just tiny separate Notepad .txt files, and much of my ‘graph’ consists of simple folder shortcuts), but I find it regrettable that in modern apps, and especially on the mobile, the access to your single files is largely obscured — and I was already thinking that a ‘Reclaim your filesystem’ movement was due.

I understand the push from larger objects towards smaller entities. From a picture object to picture dots. From assignments to xAPI events. It might help to ‘see’ an emergent whole picture in the way human brains do when they let go of the typical isolating/ fixing habit. (I am not sure though, if Learning Analytics is not also used to isolate ‘trends’ and reduce students to measures.)

But the users’ handling of their data becomes more complicated, and I fear people are willing to delegate ever more of this hassle to the eager offers of ‘helpful’ platforms. The classical example for me was RSS where the simple thing of a feed address is so much obscured that standalone readers died and people were lured into the trap of the Google Reader.

So, yes, decentralization becomes more important with the data-based model — becomes very important.

Posted in EL30 | 4 Comments

#EL30 Alien Intelligence AI

In EL30, a very interesting topic so far was about ‘Ethical AI’ and what makes humans different from AI.

Inevitably, the association pops up that the AIs will be very smart and autonomous, and we hope that they will want to behave ethically. And within this idea, two tacit assumptions are hidden:

  • one about our own ethics: that it is based on generally valid principles which can be deduced from reasons, ideally in a scientific way, and can be formalized into rules for the AIs,
  • and one about the kind of AI’s intelligences: while we have no idea about the level how much they might one day approximate our own level, we are sure that AIs will only be able to think in the formalized way of science and technology — never more human-like…?

I think these are both misconceptions.

1. Of course, the traditional AI of expert systems and reasoning engines was fundamentally different from humans. And of course, it is difficult imagine how an AI could be subjective, creative, have passions or even empathy. Therefore, it might be useful to think of them as alien intelligences: as if they were our co-learners from the “Interplanetary File System” (IPFS, see week 5 🙂 ). These intelligences are equally difficult to imagine, but very probably do exist nevertheless.A robot with sad blue eyes and a rotated blue heart on the lower right. Many bloggers have thought about what may be uniquely human ‘beingness’. Creativity and kindness seems to be central. Or, for example, Jenny says that being “is one of those ideas that cannot be made explicit without losing its meaning.“, and Laura mentions what has no answers and can’t be measured. I searched my own blog and think it can’t be objectivity, or finding optimized, rational, assessable, uniform solutions, because these are prone to cognitive automation. Rather, human minds grow (or, as Jenny’s commenter Gary emphasizes, develop — hence the pivotal role of machine learning), from a seed of trusted grounding, into diverse individuals.

Thanks again to Jenny who, in a private conversation, pointed me to a passage from Iain McGilchrist’s book:

“Human imitation is not slavish. It is not a mechanical process, dead, perfect, finished, but one that introduces variety and uniqueness to the ‘copy’, which above all remains alive, since it becomes instantiated in the context of a different, unique human individual.” (p. 247)

i.e., it does not work like programs are copied, but with individuality and subjectivity that guarantees sufficient diversity for further evolution.

Once AIs grow similarly as humans, and since they now share the network properties of our own neuronal networks, it is no longer absurd to suspect that some creative and passionate forms may one day be constructed. Not absurd, just very alien. But it can’t hurt when we learn how to live tolerantly and respectfully together with alien coworkers.

So the idea that AIs will always be just what amounts to a left ‘hemisphere’ dominance, is dangerous. Even more so since it is just us humans who strive to become ever more that way.

2. In the ethical issue, then, I don’t think we should just hope that we can use the AIs as tools. “AI for the good”, or “for common welfare” (see the blog parade where I participated), might function as a distraction from impending dangers. Also, “Ethically Aligned Design” is IMHO misleading since we software developers cannot effectively influence how technology will be used or abused. Such an overdone demand would only lead to more frustration and surrender.

However, we can alert the appropriate layers about the impending dangers: politics and the voters, and point to critical flaws. IMHO, it is particularly the problem when AI is used to administer, or even create, shortages such as access to the labor market, as I said in the blog parade. And the problem of traceability of the algorithms. Transparency is a key requirement. For a start, a minimum transparency should be established by a mandatory labeling requirement of artificial communication partners. After all, former telephone directory entries here had to carry a symbol if an answering machine was connected. If we acknowledge that trusted individuality is a key human feature, we need to be able to trust our genuine fellow humans.

Like Keith, I hope that AIs will be useful tools rather than patronizing deciders. If in doubt, as a rule of thumb, they could already do a great benefit if they just do some sorting before the human decision-making. And there is some hope that the ‘passionate’ variety of AI will not come too soon, if we first focus on the feature that Jenny mentioned: “they don’t get tired” — so they probably won’t be constructed with passions.

Posted in EL30 | 4 Comments

#EL30 A lot to decentralize

So the starting shot for EL30 happened yesterday night, and now the rich buffet of ideas is officially opened.

A grasshopper, the course's mascot.

Source: Stephen Downes CC-BY-NC-SA

I wonder why we felt that the availability of the resources did not yet suffice to start individual discussions before this. Or why a synchronous session is apparently needed to start off the asynchronous discussions (I notice this because I have always had problems with the speed of such live sessions). It seems that, even in a decentralized course around the very topic of decentralization, such an event may be necessary where we all (virtually) meet at a central point in time? And that there is still much legacy from centrality.

The biggest problem is how to discover the peer learners and their resources, if we just use ‘word of mouth’ (or blogroll?) discovery. The worldwide search for persons and hashtags via Twitter seems utterly centralistic, and will it scale up and work in large federations?

There is no registration required in El30, and this is a good thing, because making content readable only to registered participants, would be so very web 1.0. Registering for the newsletter is optional. I never registered to Stephen’s mailing lists because I enjoy them via RSS. I personally don’t like linear (central!) streams such as email (let alone Twitter) so much. The unsorted stream forces me to context-switch more than what is necessary in ‘classified’ subfolders, and is a bit like too much multi-tasking, which makes today’s life so crazy.

The read-write web 2.0, as opposed to the read-only web 1.0, benefits from lists of participants (such as the opml that will probably be generated by https://el30.mooc.ca/cgi-bin/submit.cgi).

I am not sure if this ‘submit’ could be called ‘register’ because I do not know what negative connotations this word ‘register’ has. In particular (and this leads to another big term of the course:) as opposed to ‘ledger’ which is a word that I have rarely heard. In my dictionary, it looks like register is more like a directory, or the ‘roll’ for ‘enrolment’, while ledger is more for commercial bookkeeping, and its etymology suggests a kind of breviary or “a book that lies permanently in some specified place” — i.e. not very decentral, either.

Posted in EL30 | Leave a comment

#el30 Technical: Feeds Import

In a previous Mooc, I described how to import the feed list into Thunderbird. The procedure still works as shown in the YouTube video.

In gRSShopper, it currently worked as follows:

  • Do not try Find > Data > [Import] Feed — as I did! Instead
  • Go to Settings (the green cog icon in the upper right),
  • then click the “Harvester” tab,
  • scroll down to the bottom and click “Import Feed List From OPML”,
  • ignore the errors at the top and scroll down to “Select an OPML file”, browse to a previously downloaded file, and hit the “Upload” button.

  • If the XML format is accepted, you are done.

For me, the format generated by “Export OPML File” did not work currently in Thunderbird. I created my own page after the archetype of the “Edu_RSS OPML” page which is shipped via the distribution file cgi-bin/sql/gRSShopper-ple.sql — I just had to adapt some accessories:

Make > [List] Template > (Edit) opml_top — I deleted everyting between <head> and </head> — and

Make > [List] View > (Edit) feed_opml — I replaced it by

<outline text="[*feed_title*]" title="[*feed_title*]" type="rss" xmlUrl="[*feed_link*]"/>

If you start liking gRSShopper, see more on my blog outside the el3o category:

Posted in EL30 | Leave a comment

More gRSShopper

I have played quite a lot with gRSShopper because I like it.

Result 1

One result is a list of Stephen Downes’s articles, by categories:

I still have not found how I can use the categories table for the optlist in the entry form.

Result 2

I am rather proud of the next result,

that allows you to Display a gRSShopper List or add to a Condensr Map (Condensr is my own think tool). The sample data used is the same as in a previous blog post.

First, this is a gRSShopper page

and the Javascript is https://github.com/x28de/mytooldemo,
the demo version of my free Java program.

It is called from another page

[<a href="<st_cgi>page.cgi?x28cat=[*x28cat_id*]">List</a>]
[<a  href="http://mmelcher.org/x28map.html?http://mmelcher.org/cgi-bin/page.cgi?x28cat=[*x28cat_id*]&format=condensr" target="_map">Map</a>] [*x28cat_cat*]<br />

on the same server (to avoid a CORB problem), but I was not able to
use the <st_cgi> tag again because I don’t have https where the javascript
comes from, due to an old plan.

This page, in turn, points to a view called x28cat_condensr:

<admin x28cat,[*x28cat_id*]>
<keyword db=x28text;cat=[*x28cat_cat*];format=condensr;sort=crdate DESC;>

and a view called x28text_condensr

[*x28text_title*]    [*x28text_excerpt*]

(with a tab in between), and such tab-separated lists (label TAB detail)
are the input that can be dragged and dropped onto my canvas.

Five pictures

To understand gRSShopper better, I made the 5 pictures, according to Christina Wodtke’s 5 models

  • “Mind Maps, to gather your thoughts
  • Concept Maps, to organize your understanding
  • System Maps, to map the system (a tautology, but an accurate one)
  • Mental Models, to understand and communicate your user’s understanding
  • Concept models, to message a way to think about a complex system”

(which I had also done her https://github.com/x28de/mytool/wiki/Design for my own tool).

Concept model

Mental model

System map

Concept map


The mindmap’s content (without the cross connections) is better readable here:


  • elided benefits of RSS
    • harvested in the background
    • decentralized
      • no hub needed
      • no gatekeeper
      • no patronizing
    • pull, not push
      • less incentive for loud voices
    • no stream enforced
      • less context-switching
      • less built-in confusion
        • no need for recommendations
      • more room for infrequent writers
    • no tracking and privacy abuse
  • full workflow
    • aggregate
    • organize
    • publish
      • even distribute
  • incredibly powerful common interface
    • for common tasks
      • many channels in & out
      • many shipped examples
    • for custom tables
    • even for system tables
      • sometimes scary
  • emerged from practice
    • proven & very effective
    • many subtle accelerators
      • need time to appreciate
    • continuously improved
      • perpetual beta?
    • tailored & biased
      • courageous ‘under the engine hood’
      • specialities for large audiences
  • beyond consumption
    • handy for involvement
      • annotate/ refine/ put in context
      • bookmark/ share/ tag
    • convenience for making
      • comment or cite
      • curate or compile
      • write
    • beyond page impressions
      • pre-process the incoming
      • store resource meta-info


Posted in Personal Productivity | Tagged | Leave a comment

#el30 Technical: Week minus one

I just realized that week ‘-1’ (Getting Ready) has already started yesterday. So here is a ‘Hello World’ test posting with the new category “el30”, according to the hashtag “#el30”.

The feed address (i.e., XML, not HTML) of this category is now
(note the appended “feed/”, for Blogspot look here), and it can be harvested by gRSShopper as follows.

Install gRSShopper on Reclaim Hosting as described here.

In the PLE, click the database icon, then Make > [New] Feed:

Then click the “Harvest” tab:

Then insert the feed link:

Click anywhere outside the fields, and watch for a wait icon (spin) as shown here:

Finally your insert will be acknowledged with a green “OK”. Then you must approve the new feed, clicking “Approve”:

Now list the feeds (Make > [List] Feed) and note that the new one has now a green light:

Click the Edit icon (a pen) next to it and then the Harvest tab: you should see a green light, too, and new buttons such as “Harvest”:

I would recommend not to use this button but instead, set up the automatic harvesting via “Cron Job” in the Reclaim hosting cPanel, as explained in the above-mentioned installation instructions (and perhaps issue #6). After maximal 10 minutes waiting, the feed should harvested such that you can read the posts via “Read”.

Posted in EL30 | Leave a comment