Η εξαγορά του Twitter, από τον Elon Musk, φαίνεται ότι έφερε ένα πολύ καλό στην υπόθεση των ανοιχτών τεχνολογιών. Δημιούργησε ένα μεγάλο κύμα μετακόμισης πολλών ανθρώπων, από το Twitter στο Mastodon.
To Mastodon είναι μια open source υλοποίηση ενός αποκεντρωμένου κοινωνικού δικτύου, βασισμένο στο ανοιχτό πρωτόκολλο ActivityPub. Σε μεγάλο βαθμό θυμίζει τον τρόπο λειτουργίας του Twitter, αλλά η δύναμη του είναι ότι ο κάθε χρήστης βρίσκεται σε διαφορετικό server. Όμως όλοι οι servers “μιλάνε” μεταξύ τους και οι χρήστες μπορούν να “ακολουθούν” χρήστες που βρίσκονται αλλού.
Μπορεί ο καθένας να στήσει το δικό του instance του Mastodon, που μπορεί να έχει συγκεκριμένη θεματολογία, να είναι προσωπικό, να ανήκει σε μια εταιρεία, σε έναν οργανισμό, σε ένα πανεπιστήμιο κοκ.
Έτσι είπα κι εγώ να δοκιμάσω. Υπάρχουν έτοιμες λύσεις σε διάφορες υπηρεσίες cloud (π.χ. Digital Ocean), που μπορείς πάρα πολύ εύκολα να στήσεις το instance σου. Υπάρχει όμως και ο τρόπος να το στήσεις σε docker, που είναι όμως παραπάνω φασαρία.
Το instance μου είναι αυτό (https://mstn.apps4net.eu) και το account μου αυτό (https://mstn.apps4net.eu/@YiannisKiranis)
Μπορεί κανείς να αρχίσει να ψάχνει για το Mastodon από εδώ.
Ο #Chrome έχει ένα χαρακτηριστικό που δεν επιτρέπει πολλαπλά downloads από μια σελίδα. Θα πρέπει ο χρήστης να το απενεργοποιήσει. Δηλαδή αν η σελίδα έχει π.χ. 2 links για download κάποιων αρχείων, θα λειτουργήσει μόνο την πρώτη φορά που θα πατηθεί ένα από τα δύο. Αν πατήσεις στο άλλο μετά, δεν θα κατέβει. Και δεν βγάζει και μήνυμα.
Προσπαθώ να βρω έστω έναν τρόπο σε #JavaScript, να κάνω detect ότι είναι enabled το χαρακτηριστικό, για να ενημερώνω τον χρήστη. Δυστυχώς τίποτα μέχρι τώρα
Συνεχίζω να παίζω με διάφορα στην Java. Αυτή την φορά ήθελα να φτιάξω ένα εργαλειάκι για να αντλώ όλα τα bookmarks που έχω στο Pocket. Σκέτα τα url όμως. Το χρησιμοποιώ κυρίως για να προσθέτω βίντεο (συνήθως μουσικά) από youtube και κάποια στιγμή που μαζεύονται πολλά, τα ρίχνω μαζικά στον browser, να τα δω. Το pocket δεν σε βοηθάει να ανοίξεις πολλά ταυτόχρονα. Ακόμη κι ένα – ένα να το ανοίγεις και μετά να το σβήνεις, είναι πολύ κουραστικό (με πολλές κινήσεις).
Το εργαλειάκι, λοιπόν, κάνει ακριβώς αυτό. Συνδέεται στο account σου στο Pocket και τραβάει όλα τα bookmarks, εμφανίζοντας σκέτα τα url. Μετά έχεις και την επιλογή να τα σβήσεις.
Για να κάνω όλη την δουλειά, χρησιμοποιώ το API που δίνει το Pocket. Καταρχήν κάνω το authentication χρησιμοποιώντας το OAuth 2.0. (σου ανοίγει παραθυράκι με το site του Pocket, για να κάνεις login και να πάρεις τα κατάλληλα δικαιώματα). Στην συνέχεια γίνεται το fetching των bookmarks και η εμφάνιση τους. Αν πατήσεις Delete, κάνει την ανάλογη κλήση στο API για διαγραφή όλων.
Σε μια πρώτη δοκιμαστική έκδοση που ανέβασα (και μπορείτε να κατεβάσετε το εκτελέσιμο αρχείο .jar) κάνει όλη την δουλειά ήδη. Απλώς τώρα θέλει δουλίτσα στο interface, γιατί είναι πολύ χύμα. Του λείπουν κάποιοι αυτοματισμοί, για παράδειγμα.
Ενώ και ο κώδικας από κάτω είναι ακόμη πολύ χύμα και δοκιμαστικός. Θέλει βελτίωση και να γίνονται και οι διάφοροι έλεγχοι σε περιπτώσεις αποτυχίας. Όπως και διάφορα validations.
Το εργαλειάκι έχει γραφτεί σε Java 15 και χρησιμοποιώ JavaFX για το περιβάλλον. Επίσης δοκιμάζω το Maven για τον χειρισμό των διάφορων dependencies.
Μπορείτε να δείτε τον κώδικα του Pocket Parser και να κατεβάσετε το αρχείο .jar από εδώ. (Απαιτεί τουλάχιστον την έκδοση 15 της Java στο PC σας)