Avatar of Axel Dürkop

Axel Dürkop

Hamburg University of Technology
Hamburg University of Technology·
Needs advice
on
D3.jsD3.js
and
Neo4jNeo4j

I want to build learning paths in a simple way and visualize them, the way Neo4j or D3.js do it. Example: I have a set of learning resources that can be connected depending on certain criteria. Thus, it would be possible for learners to start from various starting points and have learning paths depending on this starting point.

Following this, I need two things: first, a UI that lets me connect entries from a database so that a linear view, like a path, comes out. And second, a bird's eye view on the various paths like a force-directed graph that stems from the linear connections I made.

READ MORE
6 upvotes·101.5K views
Replies (1)
Software Engineer & Support Operations Lead ·
Recommends
on
Neo4j

Building and visualizing a graph doesn't require a complex engine. It could be done with Lucidchart, or even basic tools like Arrow Tool, or mind map tools like CMap, if a UI for a graph is your only goal.

That said, there are a lot of things you can only do with a real graph database.

  • Run applications on the data.
  • Import data to create a graph.
  • Search and query the graph, to filter to specific paths and nodes.
  • Run graph algorithms to find things like shortest path, betweenness, and community detection.

If you will need some of the features of a graph database, and a chart of your graph isn't enough, Neo4j will be the best avenue to explore. One word of caution, it has a little bit of a learning curve, but it is SO worth it. Graph databases, especially good ones like Neo4j, are an indescribably powerful tool for organizing information (any information).

GraphDBs are to RelationalDBs, what RelationalDBs are to Spreadsheets. But GraphDBs are way easier to learn.

READ MORE
4 upvotes·927 views
Hamburg University of Technology·

Me and a lot of colleagues have done documentation collaboratively with https://hackmd.io/ which also comes as an open source fork as https://hedgedoc.org/. The first has commenting function, the latter hasn't. Both make it easy to do doc sprints synchronously which means everybody is on the phone at the same time and write down documentation. As you do this with Markdown you can use your writing with https://squidfunk.github.io/mkdocs-material/ e.g. which is a static site generator running on Python and build beautiful documentation from Markdown files. If you want to build with https://gohugo.io/ I recommend https://www.docsy.dev/ theme.

We do scholarly writing and documentation with GitLab which we host on-premise. GitHub and GitLab come with sophisticated workflows for commenting and quality assurance if you learn to branch and merge which is for a lot of folks a steep learning curve. To onboard colleagues I recommend starting with HedgeDoc first and then migrate to more advanced workflows with Git(Lab|Hub).

READ MORE
Axel Dürkop (axel-duerkop.de)
6 upvotes·1 comment·18.7K views
Michael Masouras
Michael Masouras
·
April 2nd 2021 at 11:15PM

Thanks, that was very thorough. My concern with these kinds of approaches is that they impose barriers (in terms of time and workflow friendliness) to updating and commenting on the docs. The GoogleDocs-style writing and commenting are more frictionless in this sense.

·
Reply
Hamburg University of Technology·
Recommends
on
DjangoDjangoFlaskFlask

Hi Mohamed, I love Django for its "batteries included" philosophy, meaning that you get the backend for free and a lot of stuff for database abstraction. But often you just need some kind of webserver backend logic and Django is oversized for that purpose. In that case I go with Flask which has a modular approach so that you need to gather the parts yourself that you need. If you come from a Python background I think there is a lot to explore with Python for the web and it very well into the data science landscape.

READ MORE
5 upvotes·1 comment·50.7K views
Harald Fauland
Harald Fauland
·
October 6th 2022 at 5:48PM

it will always amaze me, how someone experience in Django can go back to something so basic as flask.

·
Reply