Νέα αρχή, νέο σπίτι

Μετά από 17 χρόνια blogging και διαμονής στο javapapo.blogspot.com, αποφάσισα ότι ήρθε η ώρα για μετακόμιση· εξάλλου τα τελευταία χρόνια έχω κάνει 2-3 ανά την Ευρώπη, τι είναι άλλη μία και μάλιστα ηλεκτρονική. Η μετακόμιση συνεχίζεται as we speak, αλλά είπα να την παγιώσω με αυτό το post. There is no way back· έχω ήδη σβήσει 95% από το content μου στο blogspot!
Προτού μπω σε λεπτομέρειες, να πω ότι ηθικός αυτουργός αυτής της μετάβασης είναι ο καλός φίλος Γιώργος Στεφανής, που χωρίς αυτόν δε θα το σκεφτόμουν καν, πόσο μάλλον να πεισθώ να περάσω σε ένα εργαλείο όπως το Gatsby. Γιώργο, προφανέστατα ξέρεις ότι θα είσαι ο αιώνιος go to man μου από εδώ και πέρα, αν κάτι σπάει. Η σχέση μου με το ecosystem της Javascript ήταν, είναι και θα συνεχίσει να είναι προσεκτική ή μάλλον επιδερμική! Αυτό το τελευταίο ακούστηκε σαν προεκλογική ομιλία του ΠΑΣΟΚ.
Λοιπόν, σε γενικές γραμμές ποτέ δεν προσπάθησα να πάρω αρκετά σοβαρά το blog μου· ήταν και είναι για μένα ένας τρόπος έκφρασης. Συνεχίζω να το θεωρώ κομμάτι του εαυτού, γι' αυτό και δεν το σταμάτησα ποτέ. Τα τελευταία χρόνια η ζωή μου άλλαξε αρκετά, αλλά και ποιου η ζωή δεν αλλάζει καθώς μεγαλώνουμε! Η συχνότητα που γράφω έπεσε από 100άδες σε μερικές δεκάδες post κάποιες χρονιές (ίσως και για το καλύτερο, να σου πω, τώρα που διαβάζω κάποιες από τις χαζομάρες που έγραφα, οι οποίες απλά έχουν συναισθηματική αξία για μένα και ίσως την οικογένειά μου, αλλά δε νομίζω ότι θα λείψουν από την ανθρωπότητα). Το blog ήταν κάτι σαν ψυχανάλυση, άλλες φορές ήταν απλά ενδιαφέρον και άλλες φορές ήταν αυτή η τάση που έχω σαν προγραμματιστής να καταγράφω και να μοιράζομαι πληροφορίες και τεχνικές. Αν μπορούσες να δεις το επαγγελματικό μου ιστορικό σε εταιρείες που έκατσα χρόνια, θα διαπίστωνες ότι ένα από τα πράγματα που θεωρώ ήμουν καλός ήταν στο να γράφω στα εταιρικά wiki.
Με το blog αυτό δεν προσπάθησα να βγάλω λεφτά ποτέ και ούτε θα το κάνω τώρα. Με βοήθησε ίσως κάποιες φορές να promo-τάρω τον εαυτό μου; Ναι, αλλά εντάξει, δεν είναι ότι είμαι super διάσημος ή super πλούσιος ή super σημαντικός. Αναγνωρίζω βέβαια ότι μέσα σε αυτά τα 17 χρόνια κάποιους τους ενέπνευσα (ίσως με κάποια τεχνικά θέματα, π.χ. Java, Mac), άλλους τους κράτησα παρέα ίσως με κάποιες ανάλαφρες σκέψεις (πιο νεανικές) ή με τα πολιτικά κολλήματα και το rage της ελληνικής πραγματικότητας. Σίγουρα σε κάποιους έσπασα τα νεύρα ή με μίσησαν. Δεκτά όλα.
Πρόσφατα, σε μια συζήτηση με τον Γιώργο, προβληματίστηκα στην ερώτηση «Πόσο έλεγχο έχεις στο content σου;» και μετά η επόμενη μαχαιριά ήταν το «Πάρε το template στο blog σου είναι παλιακό, και σπάει και το formatting». Δε με πείραξαν ιδιαίτερα τα περί ομορφιάς, ίσως γιατί ήταν κάτι το οποίο δεν ήθελα απλά να ασχοληθώ. Έχω αλλάξει 2-3 φορές template στο blogger, και την τελευταία φορά που προσπάθησα να πειράξω το template κατέληξα απλά να κάνω τα πάντα revert και είπα «άντε γ*μήσου, μια χαρά είναι έτσι». Ναι, τα code snippets μου είχαν άθλιο formatting, αλλά τουλάχιστον δεν έμπαινα καν στη διαδικασία να ασχοληθώ. Έβλεπα το blogger σαν έναν editor· έγραφα ότι ήθελα, πάταγα save και τα λέμε την άλλη φορά. Μια εβδομάδα μετά και καθώς αυτή η μετακόμιση είναι ακόμα ενεργή, να πω ότι έκανα λάθος. Δεν ήταν ωραίο που τα πέταγα όλα όπως να 'ναι, ότι να 'ναι, και φυσικά δε σεβόμουν τόσο το όποιο content μου. Προφανέστατα κανείς δεν πέθανε και κανείς δεν είναι dependent στα γραπτά μου, αλλά είναι τελικά ωραίο να αγαπάς λίγο παραπάνω τα γραπτά σου.
Το πιο σημαντικό βέβαια που με προβλημάτισε ήταν ο έλεγχος. Δύο, τρεις μέρες πριν είχα twitt-άρει για την Google και
την αψυχολόγητη κίνηση κάποια χρόνια πριν να κλείσει το Google Reader. Κάπου εκεί τελείωσε και για μένα η εποχή που
είχα τα blog Νο1 στη λίστα των πραγμάτων που τσεκάρω κάθε πρωί. Σταμάτησα να παρακολουθώ και να διαβάζω αρκετούς (νομίζω
ότι και αρκετός κόσμος σταμάτησε να γράφει παράλληλα). Συνεχίζω να διαβάζω blog (αρκετά λιγότερα) και τώρα βασίζομαι πια
στο Twitter και φυσικά να σας έχω στο feed μου. Αν post-άρετε ένα link, θα το δω σίγουρα και θα το βάλω στα υπόψη.
Δεν έχω κανένα παράπονο από το Blogger· για 17 χρόνια ήταν το σπίτι μου και δεν πλήρωσα μια για το blog. Δεν είχε πολλά outages και επειδή γενικότερα ήθελα μια υπηρεσία editor και να μη σκέφτομαι τίποτα, ήταν αυτό που λέμε perfect fit! Όταν όμως πριν 10 μέρες ξεκίνησα τη διαδικασία να κάνω export το content μου 17 χρόνων, τότε με έκοψε κρύος ιδρώτας. Ναι, το Blogger παράγει ένα τιτανοτεράστιο xml που δύσκολα βγάζεις άκρη με κάποια πράγματα σπασμένα, π.χ. special characters, αλλά δεν μπορείς να πεις ότι είναι και το πιο ωραίο πράγμα. Ήλπιζα σε κάτι πιο οργανωμένο, π.χ. xml αρχεία per post να μπορώ να βγάλω άκρη, ίσως να τα κάνω εύκολα migrate. Έκανα μια μικρή έρευνα και δε βρήκα αρκετούς έτοιμους τρόπους για το πώς να κάνω migrate το τεράστιο αυτό xml σε μικρότερα markdown αρχεία έτσι ώστε να μπορώ να τα προσθέσω σε κάποιον blog generator όπως το Gatsby ή κάτι άλλο.
Τεχνικές λεπτομέρειες
Το πρώτο μου μέλημα ήταν να διατηρήσω το content μου και να του αλλάξω format, οπότε έπρεπε να περάσω από το xml export του Blogger σε markdown. Για να το κάνω αυτό χρησιμοποίησα το WordPress, τι ειρωνεία! Είδα ότι υπάρχουν αρκετά πιο πολλά εργαλεία που θα με βοηθούσαν στο migration σε markdown αν το blog μου ήταν στο WordPress. Οπότε άνοιξα ένα free WordPress blog και του έδωσα να κάνει import το xml αρχείο από το Blogger. Να είναι καλά το WordPress, το έκανε τέλεια! Αφού είχα λοιπόν το javapapo.blogspot.com σε μορφή WordPress, βρήκα αυτό το εργαλείο βασισμένο σε Node.js, ναι τι ειρωνεία ξανά! Έκανα export το WordPress blog μου, όπου μου έφτυσε 3-4 αρχεία και μετά με το παραπάνω Node.js εργαλείο κατάφερα να πάρω τα post μου σε μορφή markdown, σπασμένα σε χρονιά και per post!
Ήταν καλή η διαδικασία; Χμ, και ναι και όχι. Το κείμενο που με ενδιαφέρει ήταν ΟΚ, ακόμα και τα ελληνικά, αλλά τα διάφορα inline link που είχα, φωτογραφίες, πολλά σπάσανε! Μικρό το κακό, όπως είπα 90% από αυτά που έχω γράψει δε θα χρειαστούν σε κανέναν. Μετά από αυτό έπρεπε να παίρνω σιγά σιγά το κάθε post και να διορθώνω το markdown έτσι ώστε το Gatsby να το καταλαβαίνει. Συγκεκριμένα πρέπει να βάλω για κάθε post ένα header σαν και αυτό!
1---
2title: "Νέα αρχή, νέο σπίτι"
3date: "2020-11-27"
4draft: "false"
5categories: [personal]
6tags:
7
8- "web"
9- "ελληνικά"
10 description: "xxx"
11
12---
Τέλος, όλο το repo βρίσκεται στο αγαπημένο μου gitlab.com και από εκεί με τη βοήθεια του Netlify free plan, γίνεται publish κάθε φορά που κάνω commit στο _master'. Το domain είναι δηλωμένο στο AWS για πλήρη έλεγχο με τα σχετικά DNS tweaks.
Αυτή τη στιγμή γράφω το post αυτό χρησιμοποιώντας το IntelliJ το οποίο έχει και Ελληνικό ορθογράφο!
Τελικά
Δε θα περιμένω άλλη μια εβδομάδα για να κάνω migrate όλα μου τα post· εξάλλου δεν είναι και εύκολο να τα δεις τώρα, μόνο ίσως από link σε tag. Ας γίνει η αρχή έτσι και ελπίζω σύντομα να βάλω ίσως κάποια comment και searches. Σε γενικές γραμμές είμαι ευχαριστημένος με την αλλαγή και παρόλο που δεν είμαι ειδικός στον συγκεκριμένο static site generator, το γεγονός ότι έχω απόλυτο έλεγχο των γραπτών μου σε ένα format όπως το markdown, αλλά και δικό μου domain, με κάνει να νιώθω πιο σίγουρος ότι δε θα χρειαστεί να κάνω επίπονα migration και edit χιλιάδες αρχεία κάθε βράδυ!
- Update: το RSS feed είναι εδώ