Το τελευταίο post εδώ το έκανα με την έκδοση 0.10.0. Από τότε πολύ νερό κύλησε. Μπήκαμε σε φάση beta και πάρα πολλές αλλαγές/διορθώσεις/βελτιώσεις γίνανε.
Πάμε να τα πιάσουμε με την σειρά.
Τον Σεπτέμβριο προστέθηκε η δυνατότητα να ανεβάζει ο χρήστης media αρχεία, απευθείας από το web περιβάλλον. Δεν χρειάζεται δηλαδή να αντιγράφει τα αρχεία σε κάποιον φάκελο και να πατάει μετά συγχρονισμό μέσα στην εφαρμογή. Ο συγχρονισμός παραμένει, αλλά στην ουσία είναι για την πρώτη φορά που πρέπει να περαστούν ακόμη και χιλιάδες αρχεία. Στην συνέχεια που ο χρήστης απλά περνάει μερικά αρχεία κάθε φορά, τα κάνει upload απαυθείας από τον browser του.
Με αυτή την προσθήκη η εφαρμογή μπήκε και σε φάση beta.
Τον ίδιο μήνα ανέβηκε και η έκδοση 0.12.0 που είχε μερικές αλλαγές στην δομή του κώδικα και αρκετές διορθώσεις σφαλμάτων.
Εκεί όμως που του άλλαξα τα φώτα, του κώδικα, ήταν στο επόμενο update τον Οκτώβριο. Εκεί άλλαξε όλη η δομή στο πως καλούνται όλες οι κλήσεις AJAX, με χρήση routing. Ένα πρώτο δειλό τσαλαβούτημα στα νερά του MVC pattern.
Όλες αυτές οι αλλαγές όμως δεν ήταν αναίμακτες. Πολλά πράγματα σπάσανε, ειδικά όποια δεν δούλευα εγώ προσωπικά και δεν είχα προσέξει. Έτσι τον Νοέμβριο ανέβηκε το επόμενο update με πολλές διορθώσεις και μια προσπάθεια να παίζει η εφαρμογή και σε Lighttpd, εκτός από Apache.
Μέχρι που ήρθε ο Δεκέμβριος και άλλαξε ολόκληρη η οπτική μου, για τον δρόμο που θα πάρει η εφαρμογή. Μπήκα στον θαυμαστό κόσμο του Docker κι έτσι ελάχιστη προσοχή θα δίνω τώρα για το πως θα εγκαταστήσει κάποιος την εφαρμογή στον server του. Θεωρητικά μπορεί να το κάνει, αλλά δεν ξέρω τι μπορεί να σπάσει από εδώ και πέρα. Η εγκατάσταση της εφαρμογής προτείνεται πλέον να γίνεται σε Docker.
Αυτό σημαίνει ότι ο χρήστης (χοντρικά) εγκαταστεί το Docker (αν δεν το έχει ήδη), κατεβάζει τα αρχεία της εφαρμογής, τρέχει μια εντολή και όλα είναι έτοιμα, χωρίς να παιδεύεται με τις διάφορες απαιτήσεις που μπορεί να έχει η εφαρμογή. Αναλυτικές οδηγίες εγκατάστασεις, εδώ.
Έτσι η έκδοση 0.15.0 ήταν εξ ολοκλήρου αφιερωμένη στο Docker… και φυσικά σε διορθώσεις σφαλμάτων. Και ακολούθησαν και 2 μικρές εκδόσεις με… διορθώσεις σφαλμάτων.
Με το Docker βελτιώθηκε πολύ και ο τρόπος που δουλεύω γενικά πάνω σε εφαρμογές. Πολύ εύκολα ανοίγω μηχανές για Dev και μπορώ να μετακινούμε ακόμη και από μηχάνημα σε μηχάνημα πολύ εύκολα. Φυσικά μπορώ να σκέφτομαι από εδώ και πέρα ουσιαστικά για dekstop web εφαρμογές, χωρίς να περιορίζομαι με το πως ο χρήστης θα τις εγκαταστήσει σε server του κτλ
Η τελευταία έκδοση ήρθε να προσθέσει μια δυνατότητα που μπορεί να γλιτώσει χρήματα για τον χρήστη. Προσωπικά ακούω πολύ μουσική από το κινητό (στο ποδήλατο, στο αυτοκίνητο κτλ) κι έτσι η κατανάλωση mobile data γίνεται με το τσουβάλι. Σκεφτόμουν καιρό πως θα μπορούσα να μετατρέπω τα τραγούδια σε πραγματικό χρόνο, σε χαμηλότερο bitrate, ώστε να γλιτώνω bandwidth.
Τελικά η μετατροπή, όσο καλό μηχάνημα και να έχεις, χρειάζεται μερικά δευτερόλεπτα. Οπότε δεν μπορώ να μετατρέπω το τραγούδι την στιγμή που πάει να φορτώσει και να αρχίσει να παίζει. Πρέπει να γίνει όσο παίζει το προηγούμενο τραγούδι. Έτσι τώρα, την στιγμή που το τραγούδι που παίζει μπει σε κατάσταση played (by default στο 20% του χρόνου του. Μπορεί να το αλλάξει ο χρήστης αυτό), τότε η εφαρμογή ψάχνει να δει ποιο θα είναι το επόμενο τραγούδι που θα παίξει (Πριν αυτό γίνονταν στο τέλος του κάθε τραγουδιού). Αφού βρει το επόμενο, τότε αρχίζει και την μετατροπή του σε χαμηλότερο bitrate και το σώζει σε προσωρινό φακέλο. Έτσι όταν πάει να παίξει, θα παίξει αυτό το προσωρινό και όχι το original. By default το μετατρέπει στα 64k, αλλά και αυτό φυσικά μπορεί να το αλλάξει ο χρήστης στα options.
Αυτή την μετατροπή μπορεί ο χρήστης να την ενεργοποιεί/απενεργοποιεί όποτε θέλει, αφού έχει μπει σχετικό κουμπάκι στον player.Το επόμενο βήμα για το Parrot Tunes, μάλλον πρέπει να είναι ένα δυνατό update στην εμφάνιση, που γενικά την έχω παραμελήσει. Με ενδιέφερε απλά να παίζει με μια σχετική ευχρηστία. Και μάλλον πρέπει να μπω στα χωράφια του Bootstrap.
Αναλυτικά οι αλλαγές που έχουν γίνει από την αρχή στο Parrot Tunes.
Ανέβηκε και το τελευταίο update (0.10.0) του Parrot Tunes. Αν και άργησα λίγο σε σχέση με το χρονοδιάγραμμα που είχα βάλει. Το τι έχει το νέο update μπορείτε να το δείτε εδώ, αλλά και στα changelogs.
Το επόμενο update θα γίνει λογικά μέσα στον Σεπτέμβριο και θα έχει να κάνει με την προσθήκη δυνατότητας uploading των αρχείων μέσω web interface. Ταυτόχρονα θα μπει και η εφαρμογή σε κατάσταση beta, αφού ολοκληρώνονται ουσιαστικά όλα τα βασικά χαρακτηριστικά της.
Η εκτίναξη της τιμής του bitcoin (στα 3.700 ευρώ περίπου η τρέχουσα ισοτιμία του) τα τελευταία χρόνια, έχει οδηγήσει πολύ κόσμο στο bitcoin mining, ελπίζοντας στο εύκολο κέρδος. Πράγμα που όμως δεν είναι καθόλου εύκολο πλέον.
Στην εξόρυξη των bitcoins, o miner τρέχει ένα πρόγραμμα για να κάνει μαθηματικούς υπολογισμούς ώστε το δίκτυο bitcoin να επιβεβαιώσει τις συναλλαγές που γίνονται και να αυξήσει την ασφάλεια. Σαν αμοιβή παίρνει τα τέλη συναλλαγών που επιβεβαίωσε, μαζί με τα πρόσφατα δημιουργημένα bitcoins. Αυτό γίνεται όμως συνεχώς όλο και πιο δύσκολο.
Για να τρέξει το πρόγραμμα εξόρυξης, χρειάζεται πολύ ενεργοβόρο υλικό (κυρίως σύγχρονες κάρτες γραφικών). Οπότε ο miner για να βγάλει κέρδος αφαιρεί το κόστος της ενέργειας που καταναλώνει, από τα bitcoins που δημιουργεί.
Από ότι υπολογίζεται, η παγκόσμια ετήσια κατανάλωση ενέργειας του δικτύου των bitcoin miners, είναι στα 16,5 TWh. Τα έσοδα υπολογίζονται σε $3,609,272,658 ενώ τα έξοδα σε $812,745,643.
Αυτό που φαίνεται ενδιαφέρον είναι ότι η παγκόσμια κατανάλωση του δικτύου, μπορεί να συγκριθεί με την κατανάλωση που κάνει μια ολόκληρη χώρα στα επίπεδα του Λιβάνου και της Κούβας.
Αν και υπάρχει πειραματισμός για λιγότερο ενεργοβόρους αλγόριθμους, δεν έχει επικρατήσει ακόμη κάποιος από αυτούς.
[πηγή: Digiconomist]