Thursday, July 27, 2006

H4x0rs και @@

Έψαχνα κάτι τηλέφωνα νοσοκομείων για να πάω να κάνω μια ακτινογραφία θώρακος για το στρατό. Πήγα να πάρω τον χρυσό οδηγό αλλά ο αδερφός μου μου πρότεινε να αφήσω τις παλιές τεχνολογίες και να κοιτάξω στο internet επειδή είμαστε μάγκες εμείς με τα πισιά. Αχ ναι λέω, το internet, πως το ξέχασα ο βλάκας! Έτσι να είμαστε και εξελιγμένοι. (Βρε φέρε τον χρυσό οδηγό να τελειώνουμε, βαριέμαι να ψάχνω τώρα και να μην βρίσκω στο χάος). Εεε, και τελικά πήραμε τα τρια μας.

Η πλάκα είναι όμως ο λόγος που συνέβει αυτό. Και στις δύο σελίδες που μάλλον θα βρίσκαμε πληροφορίες είχε πέσει χακιά (δείτε και δείτε (προσοχή, παραπέμπει να κατεβάσετε υιό σε μορφή screen saver!) αν προλαβαίνετε). Προσωπικά δεν έχει ξανατύχει να συναντήσω χακιά realtime. Το πως μοιάζουν οι χακαρισμένες σελίδες είχα δει κάποτε στο hack.gr έτσι για να σπάσω την περιέργια μου. Οπότε ξαφνιάστικα, μέχρι και save τις σελίδες έκανα για να τις έχω :). Πρώτη φορά μου τυχαίνει και μάλιστα διπλή, και μάλιστα στις δυο ακριβώς σελίδες που έψαχνα για τα τηλέφωνα του ΑΧΕΠΑ. Ο νόμος του Μέρφυ στο τετράγωνο!

Τέσπα, τελικά κατέβασα το κίτρινο τούβλο (παλιά τεχνολογία που λέει και ο αδερφός μου, χαχαχα!) και έκανα τη δουλειά μου σαν κύριος. Ειρωνία έτσι;

Αλλά όλη αυτή η ιστορία μου έδωσε την ευκαιρία να μιλήσω για τους χάξορς, μάξορς και λοιπά κατακάθια. Πολλές φορές εξοργιζόμουνα στο παρελθόν με τη συγκεκριμένη ομάδα ανθρώπων και τα ηλήθια κίνητρα τους, σχεδόν δεν ξέρω γιατί έχω τόση απέχθεια με τους "hackers", αλλά don't get me wrong, δεν είναι όλοι σκάρτοι, έναν γνωστό ξέρω που ασχολούταν με αυτά τα πράγματα και είναι πολύ σωστό άτομο ενώ προφανώς θα υπάρχουν και εντάξει άτομα εκεί μέσα και δεν θέλω να γενικεύσω. Απλώς κάτι μου βρωμούσε τόσο πολύ σε αυτήν την υπόθεση που εξοργιζόμουν με τους μύθους που έχουν στηθεί γύρω από το όλο ζήτημα. Ποτέ δεν μου δόθηκε η ευκαιρία να το αναλύσω όπως το νοιώθω εγώ σε ένα άρθρο παρά μόνο σε δικτυακές συζητήσεις όπου το κούραζα χωρίς να το αναλύω όσο κατανοητά θα ήθελα. Αλλά τώρα βρήκα ακόμη μια αφορμή..

Τι με ενοχλεί πίσω απ'όλα αυτά; Το γεγονός ότι μπλοκάρονται οι υποδομές του internet για κάποιους μαλάκες που νομίζουν ότι κάνουν κάτι; Η μόδα του χάκινγκ; Ο εσφαλμένος μύθος που έχει δημιουργηθεί; Τα ηλήθια κίνητρα πίσω από τα attacks; Το μη δημιουργικό αλλά καταστροφικό της υπόθεσης; Ίσως ένα συνοθύλευμα από όλα αυτά συν τις επιπτώσεις που έχουν όλα αυτά μαζί.

Άσχετα με το θέμα των χάκερς, με ενοχλεί όταν μια ιδέα είναι τόσο δημοφιλής, που όσο παράλογη και να φαίνεται, καταντάει κοινή αλήθεια. Την ακούς τόσο πολύ που στο τέλος την πιστεύεις. Διαδίδεται σαν τρελή (memes). Αλλά όταν ένας που ίσως σκέφτεται τα πράγματα κάπως διαφορετικά, αναλύσει αυτήν την ιδέα και ανακαλύψει πόσο άκυρη είναι, ξαφνιάζεται από την τρομερή αποδοχή που έχει αυτό το ψέμα (κατά την άποψη του). Ακούει πραγματικά τους πάντες να το διαδίδουν με τρομερό πάθος και σιγουριά και αναρωτιέται αν τελικά είναι ο ίδιος άρρωστος. The world is on heroine.

Και ειδικότερα, έτσι ένοιωθα και εγώ με αυτά που άκουγα για το "hacking" (το βάζω σε εισαγωγικά γιατί το συσχετισμό του με αυτό που εννοούμε σήμερα τον θεωρώ εμετικό). Αλλά ας πούμε ότι μπορεί να είμαι εγώ ο άρρωστος και για να το πιστεύει τόσος κόσμος μάλλον θα ισχύει (μισώ αυτή την παραδοχή). Αυτό για να μην είμαι και τόσο απόλυτος και απλώς να προσπαθήσω να καταδείξω που βρίσκω σφάλματα σε όλο το παραμύθι. Ας ξεκινήσουμε από το παρελθόν..

Κάποτε το hacking σχετιζόταν με αυτό που μου αρέσει να κάνω στον υπολογιστή. Να την ψάχνω τρελά και να το κουράζω στον κώδικα. Μέχρι και μερικά από τα κίνητρα του γιατί το κάνω αυτό χωρίς να πληρώνομαι σχετίζονται με αυτά πίσω από το αυθεντικό hacking. Οι hackers πάλι θεωρείτω ότι ήταν οι δεινοί προγραμματιστές που έθεσαν τις βάσεις, οπότε δεν μπορεί ο καθένας εύκολα να κατονομάσει τον εαυτό του hacker έτσι απλά. Αλλά ποιός θεωρείται και ποιός όχι δεν με απασχολεί εδώ πέρα. Σημασία έχει ότι το original hacking είχε να κάνει με ενθουσιώδη άτομα που λιώνανε στον υπολογιστή, ξέρανε τα άπειρα για δίκτυα, προγραμματισμό, hardware, λειτουργικά, κλπ. (Δεν έχει ίσως σημασία η ειδικότητα παρά το πόσο καλά το ξέρεις. Κάποιοι λένε ότι ο όρος θα μπορούσε να εφαρμοστεί και εκτός υπολογιστών για τον guru σε κάποια επιστήμη), και γενικώς εφευρίσκαν νέες μεθόδους, ιδιοφυείς ή μη συμβατικές συνήθως, για να ξεπερνάνε προβλήματα και να κάνουν θαύματα στο αντικείμενο τους. Αγαπούσαν αυτό που κάνουν και το ξεσκίζαν(hacking :) μέχρι αηδείας!

Σήμερα ο κόσμος αναφέρεται στους παλιούς hackers με ωραία λόγια, σεβασμό, θαυμασμό, δέος! Τι σπουδαία που είναι αυτά τα άτομα, πόσο βοήθησαν την πληροφορική, τι αλλαγές επέφεραν και με τι ήθος! Ως εδώ συμφωνώ και επαυξάνω. Π.χ. genuine hackers της ιστορίας θεωρούνται άτομα σαν τους Ken & Ritchie (Δημιουργοί του Unix και της C), Richard Stallman (free software foundation), Linus Torvalds (Linux) αλλά θα προσθέσω και τον πολύ αγαπημένο μου John Carmack όσων αφορά τις καινοτομίες που επέφερε σε 3d game engines development (για να αναφέρω και κάποιον που θαυμάζω από τον τομέα του graphics programming με τον οποίο ασχολούμαι). Σπουδαία άτομα που γουστάρουν αυτό που κάνουν και αλλάξαν εποχή. Με καλή ηθική και αθώα κίνητρα.

Τι σημαίνει όμως σήμερα ο όρος "hacker"; Εμμ.. "Πώπω μου χάκεψε τον υπολογιστή!", "Μπήκαν χάκερς και μου τα γάμησαν", "Δεν μου λες; Χάκινγκ ξέρεις να κάνουμε καμιά πλάκα;". Το τραγικά αναμενώμενο σημαίνει. Αυτό που καταλαβαίνει ο περισσότερος κόσμος σήμερα. Η μαγκιά των πιτσιρικάδων, το να 'χακέψεις' ένα site (το γνωστό defacing) για να γράψεις σε 1337 language πόσο γαμάτος είσαι και πόσο μικρή την έχει ο admin. Αηδεία! Πραγματικά ακόμα προσπαθώ να καταλάβω που χάθηκε η μπάλα και αλοιώθηκε τόσο αισχρά αυτός ο όρος. Ακόμα προσπαθώ να ανακαλύψω το κενό στην ιστορία. Και ο όρος είναι το λιγότερο που με νοιάζει. Ένα γεγονός είναι τραγικότερο για μένα. Καταλήγω σε αυτό παρακάτω..

Τελικά το συνοθύλευμα όλων αυτών των πραγμάτων που με εξοργίζουν και ταυτόχρονα με τρομάζουν συνοψίζεται στα εξής 3 facts:


  • 1) Υπάρχει σήμερα ένας μύθος για τους "hackers" όσων αφορά το πόσο σπουδαίοι είναι, πόσο θα πρέπει να τους σεβόμαστε και πως αυτοί είναι μεγάλοι επαναστάτες και θα αλλάξουν κάποτε τον κόσμο.

  • 2) Αυτός ο μύθος στηρίχθηκε στην παλαιότερη ιστορία όπου οι πραγματικοί hackers έθεσαν τις βάσεις στους υπολογιστές με την λαχτάρα με την οποία ασχολήθηκαν πάνω στο αντικείμενο τους, συνοδευμένη από καλά κίνητρα και ήθος.

  • 3) Για κάποιον λόγο επικράτησε να ονομάζονται "hackers" αυτό που ξέρετε σήμερα και ελάχιστη σχέση έχει με τον παλιό όρο. Το χειρότερο όμως είναι ότι οι τιμές και ο σεβασμός που δίνονταν στους παλιούς μεταφέρθηκαν στα παιδάκια που χακάρουν σελίδες!



Ε ναι λοιπόν! Κάτι τόσο γραφικό και μίζερο όσο το να κατεβάζει σελίδες ένα παιδάκι και να ρίχνει μπινελίκια στους υπεύθυνους του site, θεωρείται μαγκιά και τιμή! Και μετά το ξαναεπαναλαμβάνει σε άλλες σελίδες νομίζοντας ότι έτσι πολεμάει το σύστημα. So what? Αυτό το πράγμα μπορεί να θεωρείται σπουδαίο; Και σε τόσο μεγάλο βαθμό; Οι επαναστάτες, οι διάνοιες που θα αλλάξουν τον κόσμο (κάνοντας defacings)! Ευτυχώς υπάρχουν και αυτοί που με καταλαβαίνουν οι οποίοι συνήθως είναι άτομα που ασχολούνται σοβαρά με την πληροφορική όπως και εγώ, οπότε βλέπουν καθαρότερα την όλη σαθρή εικόνα. Αλλά για το συντριπτικό πληθυσμό που είναι άσχετοι με τους υπολογιστές και ίσως και ορισμένους που είναι λίγο έως πολύ σχετικοί αλλά παραπλανήθηκαν από το μύθο, δεν ισχύουν αυτά. Δεν μπορούν να το δουν και συνάμα γουστάρουν και το "hacking" όπως προβάλλεται επειδή είναι καταστροφή και άρα μαγκιά.

Ειλικρινά συχαίνομαι τη στιγμή που προσπαθώ να επιδείξω την τελευταία μου προγραμματιστική δουλειά στην demoscene σε έναν τυχαίο γνωστό μου για να λάβω την απάντηση: "Τη μαλακία είναι αυτή; Χάκινγκ ξέρεις να κάνουμε καμιά πλακίτσα;;;". Και αν θα κάνατε τον κόπο να κοιτάξετε τον έστω και bloated κώδικα που έγραψα για το τελευταίο μου demo και την υποδομή των γνώσεων πίσω από τους αλγορίθμους που χρησιμοποίησα θα ξαφνιαζόσασταν! Ο φίλος μου αυτός (φανταστικό παράδειγμα btw) δεν βλέπει τις γνώσεις και το skill πίσω από αυτά που έκανα. Βλέπει το αποτέλεσμα! Και τι φαντάζει πιο cool από τις "χακιές" των γαμάουα επαναστατημένων νέων; Σιγά μην είναι τα βαρετά demos :P

Do you catch the whole drift? Αυτό θέλει να δει ο περισσότερος κόσμος, αυτό έχει επικρατήσει, αυτό είναι πιο αρεστό και οι περισσότεροι δεν μπορούν να δουν την όλη εικόνα παρά αναμασούν ότι ακούγεται ωραίο και έχει επικρατήσει. Και έτσι αυτό επικρατεί και γίνεται πραγματικότητα.

Το πρόβλημα είναι ότι το παιχνίδι είναι χαμένο. Ο τελευταίος (genuine) hacker πέθανε για μένα. Οι όροι "χάκερ", "χάκινγκ" και "χακεύω" έχουν μπει στην κουλτόυρα μας, αποκτήσανε την παραποιημένη σημασία στη γλώσσα μας, και ειλικρινά δεν μπορώ να πείσω τον καθένα να μην χρησιμοποιεί τους όρους αυτούς για να καταδείξει αυτό που αντιπαθώ. Θα εμποδίσω την εξέλιξη της γλώσσας; Αφού αυτό επικράτησε! (Εδώ εγώ τους χρησιμοποιώ λανθασμένα για να συνενοούμαι άθελα μου!).

Αλλά δεν είναι αυτό το σημείο όπου θα πρέπει να χτυπήσουμε. Ξεχάστε τους όρους και αν το hacking θα πρέπει να διαχωρίζεται σε red hat/white hat/black hat και άλλες τέτοιες παπαρίες. Μην μπερδεύεστε με αυτήν την παραφιλολογία που δημιουργεί περισσότερη σύγχηση. Το μήνυμα που θα μπορούσα να περάσω, ίσως είναι ότι για αυτό που αποκαλείται σήμερα "hacking" δεν θα μπορούσα να νοιώσω σεβασμό με τίποτα! Οι σημερινοί "hackers" δεν είναι σπουδαίοι, δεν κάνουν επανάσταση, δεν αλλάζουν τον κόσμο, δεν είναι θεοί με τίποτα! Πως είναι δυνατόν να μιλάνε όλοι με τέτοιο θαυμασμό για τα μαγκάκια που κάνουν defacing; Με τα κίνητρα ότι θα δείξουν πόσο σπουδαίοι είναι επειδή ξέρουν ότι όλος ο κόσμος θαυμάζει τους "hackers"; Αυτό που πράττουν δεν προσφέρει τίποτα ουσιαστικό στον κόσμο και θα μπορούσα να χαρακτηρίσω τη δράση τους περισσότερο καταστροφική παρά δημιουργική! Μα καλά κανείς δεν βλέπει πια τι μεγάλη εικόνα;

Ουφ, τα είπα και θα επιστρέψω δριμήτερος με πάμπολες διευκρινήσεις που έμειναν γιατί υπάρχουν πολύ περισσότερα σημεία στα οποία παρατηρώ σύγχηση γύρω από αυτό το καυτό για μένα θέμα.

p.s. Μια όμως είναι η διευκρίνηση που θέλω να κάνω. Ορισμένοι κάποτε προσπαθήσαν να κάνουν το διαχωρισμό μεταξύ των πραγματικών και μη hackers, παραθέτοντας τον όρο crackers για αυτούς που απλά κάνουν defacing. Αν και λίγο με νοιάζουν οι όροι γιατί κατάλαβα ότι μας παραπλανούν από το να αναγνωρίσουμε το όλο πρόβλημα, εδώ θα σηκώσω ένσταση! Ως scener, θέλω να αναφέρω πως οι crackers είναι αυτοί που σπάνε το copy protection των εμπορικών προγραμμάτων ώστε ένας πειρατής (warez dude) να μπορεί να κάνει άπειρες κοπιές χωρίς προβλήματα. Αυτοί οι crackers βάζανε και menu με άπειρες ζωές στα παιχνίδια (trainers) ενώ πολλοί πιστεύουν ότι είναι οι πρόγονοι της demoσκηνής. Και αυτό γιατί πολλοί από αυτούς τους trainers συνοδευόντουσαν από animated graphics και μουσική στα πρότυπα των πρώτων demos (καθαρά graphic/music/coding demonstrations χωρίς το illegal κομάτι της πειρατείας). Αυτοί οι crackers και η cracking scene υφίσταται ακόμα και σήμερα και δεν έχουν καθόλου σχέση με τον μάλλον αδόκημο όρο που δόθηκε στους σημερινούς "hackers". Σάμπως και οι σημερινοί "hackers" θεωρούν εσφαλμένα ότι είναι πραγματικοί hackers και ονομάζουν cracker όποιον δεν γουστάρουν. Χάος με τους τίτλους αλλά καμιά ουσία. Και μη μου τους crackers τάραττε γιατί είναι οι πρόγονοι μου!

Τίτλος.

Ξανακοίταξα τον τίτλο αυτού του blog και γέλασα. Έχει μια ιστορία αλλά αν το ερμηνεύσεις στα ελληνικά θα έβγαινε κάτι σε "Καταστροφική αποτυχία". Είναι σαν να λέω, καλως ήρθατε στο blog της καταστροφικής αποτυχίας, σαν να επιδείκνια πόσο μίζερος είμαι. Για αυτό γέλασα. Γιατί θα αναρωτιέστε τι σκατά θέλω να πω με αυτό. Πάλι πεσιμισμός και μιζέρια; Χεχ.. απλώς έτυχε να φανεί έτσι. Ο τίτλος έχει άλλη ιστορία.

Κάποτε ένας φίλος μου μου έδωσε μια κάρτα τηλεόρασης crypto. Δεν βλέπω σχεδόν καθόλου τηλεόραση αλλά σκέφτηκα θα ήταν καλή φάση να γράφω καμιά ταινία από τον υπολογιστή αν ποτέ λείπω, όλα τα χαρδαβελικά (μη γελάτε, είμαι τρελαμμένος με ανεξήγητα) αλλά και ένα projectάκι που σκεφτόμουνα για παλαβό demo με κομμάτια από βίντεο, μπόλικα φίλτρα και ενδιάμεσες σκηνές 3d (Θα μπλέκει παρακμή με demoscene! Π.χ. χιόνια τηλεόρασης=>βγαίνει Xαρδαβέλας=>χιόνια=>demopart του 96=>χιόνια=>Τατιάνα=>χιονάκια=>oldschoolιά με scrollers=>κλπ. Ηλήθια αλλά διασκεδαστική ιδέα, σιγά μην την κάνω ποτέ τώρα που τα παράτησα ;P). Τέσπα, και πήρα αυτήν την κάρτα και πήγα και αγόρασα και μια κεραία και μετά πήρα τα τρία μου.

Τι μήνυμα βγάζανε οι official drivers για WindowsXP από αυθεντικό CD της Crypto, την ώρα και τη στιγμή ακόμα τηλεόραση δεν έχω στο PC;



Εεε,. μας φάνηκε τόσο αστείο αυτό το μήνυμα που το συζητούσαμε για ένα δίμηνο!!! Έγινε catch phrase στην παρέα! Και έτσι αποφάσισα να ονομάσω αντίστοιχα και το blog.

Άκου catastrophic failure ρε μαλάκα! Και με τον χρήστη να κοιτάει με μια απορεία και να αναρωτιέται "Και τώρα τι κάνω; Okkkaaayyy!". Άχαχαχα!!!

Monday, July 24, 2006

Τέλος.

Ίσως είναι η θλιβερή διάθεση που είχα σήμερα. Ίσως να φταίει το γεγονός ότι τελειώνει μια εποχή και θέλω να αφήσω κάποια πράγματα πίσω. Το έχω ξανακάνει. Γύρισα πίσω σε δύο βδομάδες. Η συνήθεια; 99% των ανθρώπων που δηλώνουν παραίτηση από αυτήν την community ξαναγυρίζουν δρυμήτεροι. Δεν βλέπω να καθαρίζω..

Πολλές αλλαγές. Αύριο ορκίζομαι. Μετά από 8 χρόνια σπουδών. Κούραση..
Σε δύο βδομάδες φεύγω στρατό. Θα με χάσετε από τα blogs. Ταυτόχρονα θα χαθώ και από την σκηνή (μια είναι).

Το τελευταίο μου demάκι(led blur) ίσως να είναι το κύκνειο άσμα πριν τον αποχωρισμό. Είχα να νοιώσω έτσι από το release του "a step beyond" (demάκι σε Amstrad, σταθμός για την πορεία μου στην σκηνή). Τα comments πιο πολλά από ποτέ. Αναγνώριση. Αλλά το θεωρώ και πάλι μέτρια βιαστική δουλειά, ίσως απλά πιο ολοκληρωμένο από τα προηγούμενα μου. Αναρωτιέμαι πόσα και τι είδους comments θα έπερνα αν δεν υπέγραφα σαν Optimus.

Έπαιξα περίεργο ρόλο στην σκηνή. Ταλαντεύομαι μεταξύ μιζέριας, καταπιεσμένης δημιουργικότητας, μέτριων παραγωγών, εμπλοκών στην real life, προσωπικά, trolling, ρουτίνα, απογοήτευση. Με γνωρίζουν πολλοί. Είμαι πιο διάσημος από δεινούς προγραμματιστές που βγάλαν κορυφαία demos. Εγώ είμαι πολλά στάδια πίσω και δεν έχω την ενέργεια πια ούτε με νοιάζει να συναγωνιστώ. Άλλωστε με ξέρουν όλοι. Αλλά όχι επειδή έκανα κάτι σημαντικό. Δεν πειράζει. Ας είναι..

Έχω κουραστεί. Τσαντίζομαι. Επαναλαμβάνομαι. Δεν τραβάει άλλο. Και στο καπάκι σε λένε και troll. Έτσι με μάθανε. Δύσκολο να βγουν από το μυαλό τους οι παλιότερες μου πράξεις. Αλλά δε με νοιάζει. Απλώς μου θυμίζει το παρελθόν. Ένα μεθυσμένο post. The troll is back. Ένα μέτριο demo που βγήκε με μεγάλη κούραση και απογοήτευση επειδή δεν είμαι σε θέση να δουλέψω παραγωγικά για ένα demo πια (Πότε είμουνα;). Και ξανά το trolling! Σίγα. Το Pouet είναι βάλτος. 95% των posts είναι μαλακίες. Αλλά εγώ είμαι ο στόχος. Μερικοί μάλιστα ντρέπονται και κάνουν την παραδοχή ότι 95% των ατόμων εκεί μέσα δεν είναι sceners. Μα έλεος! Ακριβώς το αντίθετο για κάποιον που παρακολουθεί το community και γνωρίζει μερικά παραπάνω άτομα εκτός απ'την ελίτ. Αλλά γιατί μιλάω για το Pouet τώρα;

Και έτσι τσαντίστηκα σήμερα και μέσα στην μιζέρια μου κότσαρα ένα μήνυμα "I quit the scene." και πάλι χωρίς να χώνω (κανείς δεν φταίει σε τίποτα για το πως βλέπω εγώ τη σκηνή) αλλά απλά εκφράζοντας την απογοήτευση μου και αποχαιρετώντας τους. Καταλαβαίνω βέβαια ότι η σκηνή στη φύση της είναι arrogant, ιδιαίτερο χαρακτηριστικό της demoscene με τους 1337 koderz που μαλώνουν συνέχεια. Και καταλαβαίνω ότι έτσι πρέπει να την εκλάβω και όχι και πολύ στα σοβαρά όπως παλιότερα. Λειτουργώ εντάξυ γενικώς σε αυτό το σχήμα. Ίσως τα είχαμε συζητήσει από παλιά. Απλώς βρήκα ένα post που με έθιγε σαν αφορμή για να δηλώσω πως αυτό ήταν και (ελπίζω) να το κάνω. Έτσι κι αλλιώς, είναι και μια περίοδος γενικότερων αλλαγών (ορκωμοσία, στρατός), που θα παγώσει τη δημιουργικότητα μου και έτσι θα με αναγκάσει να ξεχάσω για αρκετό καιρό τη σκηνή. Εκτός αν μες στο στρατόπεδο κολλήσω σε καμιά οθόνη και δοκιμάσω να ξαναεπισκεφτώ το Pouet για να δω τι έχανα τόσο καιρό..

Ίσως χωρούσε και η δήλωση. Για να δέσει..

Saturday, July 22, 2006

Random rants

So long it was. Time to write something..

Several good things happened in my life those two months of absence and I also have several thoughts in my mind to share. Random rants with not much connection to each other.

Each time I walk alone in the city, another interesting idea pops up in my mind. Another matter to talk about. Another subject for a new blog entry. I am preety enthousiastic about it at the time of inspiration, but later when I return back home at my PC I become unmotivated or occupied by another intriguing idea to start writting about the original subject. Only 15% of my recent thoughts for a new blog article have been released. From them, 80% were written without being totally motivated to do so at that time being. Instead that, I was entirely forcing myself to do so. Only a very small percentage of my thoughts were written while I was having the mood. And this one not at it's full extend.

It's ironic enough to have something in my mind one night, deciding to write about it the next day but later being occupied by some other thoughts that I also want to write about. Maybe I could just stick in the first subject and give some priority but the problem is that my mood changes a lot and it's hard to push yourself to write on an inspiring idea while having lost the original inspiration.

So, this post will be a mess of random rants having to do with my news and some fragments of my thoughts that I was deciding to write about each night but abandoned the idea at the very end. Well, even the previous paragraphs are parts of these thoughts :)

For example, one of my thoughts was one of my worries too (as always), whether I should push myself towards being creative or just let it flow. Hey, but we have talked about that one before! Anyways, maybe I'll find the answer alone. Hopefully, after a new release of a long work in the creative community I am engaged into, it feels like I am moving through a new era where I reflect on my past work and even learning from the mistakes I did during the last production. What interests me more in that aspect after so many years in the demoscene, is not much the technical part of it (I am already experienced in that) but mostly two other factors. One is the artistic and the other has to do with project planning.

As a coder in the scene, my work was always an ugly uninspired showcase of my programming experience in graphic algorithms, but recently I started to notice how well chosen colours and good design makes a demo more appealing to me, regardless if there is not much sophisticated code for my taste. In my latest demo, Led Blur, I wrote some functions for making it easier for me to design some color palletes for the effects and more appealing shadings for the 3d objects. I tried to apply some thought on how colors should match instead of ignoring this aspect. Still, it's far from perfect, I understand some mistakes I did, and maybe I should try to observe more carefully the design elements in the most popular demos or even take some ideas from art and fashion in the real world too. That's the aesthetical part that is interesting to me. Maybe because I haven't tried to concentrate on it in the past and I really want to see how can I progress in this aspect. Still, Led Blur is my most satisfying work ever and it even got the 1st place in the top of the month on a well known site of the community. I can be quite happy with that :)

I've just returned from a netcafe to continue this post at home. I don't seem to have much mood or feel connected with what I wrote in the previous lines, how ironic. Well, in the road my mood changed or I made some thoughts about another precious matter. For another blog post..

..so, to go on with this lame post (I already lost it and it's 4 o'clock after midnight. How did the time passed? LOL!) the other aspect is project planning. Maybe how to ensure that I am productive in a short time, how to not miss deadlines, without also making a hurried release. What happens with my motivation and the big question remains whether I should push myself to be creative rather than work on it only when I have any slight burst of motivation. Well, the lame thing is that I want to oppress me finish two demos till the end of July but this will never happen. Afteralls I have just recently finished Led Blur and what happens usually after a long awaited release of my works is that I take some rest. Why wouldn't I like to take a breath for some time before I start something new? Lol, maybe because, the first demo is for a competition which I want to support and the second is requested and I promised to do something. I doubt if I can now so I won't care :P

The way things came, I will exclude some of my thoughts I wanted to write about and just finish with some other important news in my life. Maybe it's not a good idea to mix some of the more important posts. I just don't get it or don't like what I write but let's say that it's mostly a report after two months of silence..

And to finish in a hurry and get to the point, I'll (re)mention the three good things that happened inside two months of absence and then go to sleep.

The first one is the release of Led Blur demo and the nice feeling of recognition I gathered. I have already talked about that one because it just came in my train of thoughts first.

The second one is about real life. After eight years of studying (lameness :), I finally (almost) got my diploma. This tuesday actually, I'll take an oath and receive my diploma. Actually, the good news were a surprise. Because of the student protests, I didn't even knew whether there will be any exams. The mathematics department organized exams in the middle of July and I suddenly had to stop my activities and start reading. It was unexpected! Yet, not only I passed my last two remaining lessons but I even wrote preety good at both lessons (something rare for me, who is crying for reaching the base). I don't know why this happened, it wasn't that I studied more than the previous exams. Maybe the easy subjects in one lesson, maybe luck or good concentration (It took 8 years to understand that I shall be calm on the exams and have a strategy on which subjects to write first and how to prepare. Yep, university teaches you how to pass exams :P). Anyways, now maybe even my parents can be happy :/

The third one is about my inner self. It's the most important of all. And personal. Just right after the post about depression (ironically), I accidentally made a very important discovery for me, about me. It came out after reading a comment in another random blog which made me check wikipedia about a couple of two words. And that out of curiosity, without connecting them with my case yet. Read the next paragraph for it..

Several times in the past, there was a moment where I thought I made an important discovery about myself, that I answered to the question why am I acting like this and why am I feeling that my life sucks. Each time (usually at night) I was extatic about my analysis, till the enthousiasm faded away in the morning. I was never really sure about what is happening with myself. New theories, more doubt. I am a person who can't persuade myself to believe in anything, I use to analyze too much, being too strict on the validity of my observations. This way I would never easilly attribute a mental disorder on myself without being extremely sure about it. This is just to clear up that what follows now is not my imagination or a lust for selfpitiness and attention. I am more sure than ever. I wouldn't ever post such a personal thing here if I wasn't confident about it's validity. In fact, I was shocked when I identified what I read with the suffering that I kept secret since my childhood. To discover that this thing was actually a disorder. How come didn't I seeked help?

The two magic words are Obsessive-Compulsive and the specific case that is identical to my problem is called Pure Obsessional OCD. I really want to stop writting anything more about it right now and come back later with my next blog post dedicated to it. Though, if anyone decides to write something about this matter in a comment, I'll gladly answer if necessary.

And now I'll just say goodnight instead of writting more stuff about it and then erasing as I did three times now. That's how much I want to talk about it! I really have to finish my damn next post soon because I don't let myself to write more about it now. The current post is messed up with other news and random thoughts of mine (stupid post). This precious matter should have it's own dedicated blog post.

And yet, there are more irrelevant thoughts I didn't messed with this post. Blah blah..

Tuesday, July 11, 2006

Gamepark32



Το περασμένο καλοκαίρι δανείστικα μια φορητή κονσόλα για developing. Το Gamepark32. Δεν θα το έχετε ίσως ακούσει. Είναι Κορεάτικη και πολύ πιο ισχυρή από το Gameboy Advance αλλά ίσως και το καινούριο DS. Αν εξαιρέσουμε ότι δεν έχει τα τσιπάκια γραφικών των άλλων δυο με τα special κόλπα για 2d και 3d. Αλλά με τέτοια ισχύ (ARM 100Mhz και overclocked μέχρι 166, 8MB ram, 320*240*16bpp, SMC Card έως και 128MB) και λίγο καλό προγραμματισμό πολλά είναι εφικτά.

Το αγάπησα όμως επειδή ήταν αρκετά ανοιχτό για τους προγραμματιστές. Η λογική της Gamepark ήταν "Δώσε developer tools, documentation, USB cable, υποστήριξη, κλπ. στους χρήστες και ας τους ελεύθερα να πέσουν με τα μούτρα στο homebrew developing ώστε να αποκτήσει κοινό το μηχάνημα και να διαφημιστεί". Λογική αντιδιαμετρικά αντίθετη από αυτή της Nintendo. Homebrew όρος, εννοεί του σπιτιού, χομπίστικη δουλειά από καμένα geeks χωρίς υλικό αντίκρισμα, γκαραζιά! (σκέφτομαι την κορίλλα του πρώτου apple εδώ πέρα). Και η λεγόμενη homebrew scene έβγαλε freeware παιχνίδια και εφαρμογές, ports από emulators και παιχνίδια του PC. Ειδικά το τελευταίο είναι πολύ εντυπωσιακό για την κονσόλα. Ποιός θα το περίμενε ότι σε ένα φορητό handheld που μοιάζει με το Gameboy Advance θα μπορούσες να τρέξεις Doom, Quake, ScummVM ή τα παλιά παιχνίδια ή demos από CPC, C64, Spectrum, AtariST, NES, gameboy, Mega Drive, Master System, MAME? Στην οθόνη του φορητού! Αυτά έδειχνα σε φίλους μου και ψηνόντουσαν να αγοράσουν και αυτοί ένα..

Και όμως αυτό το μηχάνημα δεν πέτυχε. Ενώ δημιούργησε μια πολύ καλή homebrew community, να το marketing, να οι λάθος κινήσεις της εταιρίας, να το ότι μάλλον δεν υπήρχαν καλοί εμπορικοί τίτλοι για το μηχάνημα (Εγώ δεν ενδιαφέρθηκα να αγοράσω ποτέ κανένα γιατί είχα τα homebrew τζαμπέ! Λες για αυτό;) είχε ως αποτέλεσμα το μηχάνημα να μην κυριαρχήσει. Πάντως η εταιρία καλά κρατεί και έχει σχεδόν ένα εξάμηνο που κυκλοφόρησε τον ακόλουθο του μηχανήματος, το GP2X. Το μηχάνημα είναι πολύ πιο ισχυρό, είναι βασισμένο στο Linux και την SDL, επιτέλους παίζει και σωστά DivX (και το παλιό έπαιζε αλλά με βουντού (όχι την κάρτα :)), γρήγορο MAME επιτέλους, αργούς αλλά υποσχόμενους PC, Amiga και PSX emulators, επίσης έχουν εξαφανιστεί πολλά από τα εκνευριστικά για τους developers λάθη του παλιού hardware αλλά προστέθηκαν καινούρια και ανάγκη για πολλαπλά firmware updates. Το δανείστικα και αυτό και είναι πραγματικά απίστευτο! (ακόμα και μαζί με τα σπαστικά λάθη και ατέλιες στην σχεδίαση που προσωπικά δεν μου άρεσαν) Δύο παράλληλους επεξαργαστές ARM στα 200Mhz ο καθένας, 64MB Ram, παίρνει SD Cards (η δικιά μου είναι 512MB αλλά μπορεί να πάρει μέχρι και 4GB!), έχει κάποια hardware acceleration functions για 2d graphics αυτήν τη φορά, και είναι εντελώς Linuxάδικο και πιο ανοικτό. Ένας φίλος μου πορώθηκε στην καφετέρια με αυτό και κούραζε το sterm (port του xterm σε SDL) με τον σπαστικό χειρισμό με το pad και τα buttons. Εεε, πορώθηκε και παρήγγειλε ένα για αυτόν και για το φίλο του! Επίσης δεν σας είπα στην ιστορία ότι το GP2X στην ουσία είναι της εταιρίας Gamepark Holdings η οποία διασπάστηκε από την Gamepark επειδή ορισμένοι δεν τα βρήκαν. Ουσιαστικά η Gamepark έβγαλε το XGP με 3d acceleration και κλειστή αρχιτεκτονική το οποίο μάλλον προορίζεται να είναι ανταγωνιστής του PSP, ενώ οι προγραμματιστές που έφυγαν ήθελαν να συνεχίσουν την ανοιχτή αρχιτεκτονική και στο καινούριο handheld. Σε αυτό πέρασα και εγώ, όπου πάει η χομπίστικη homebrew scene! Ουσιαστικά για το XGP δεν ξέρω τι παίζει, αν υπάρχει σκηνή εκεί, δεν είδα κανα νέο. Όλα τα καλά βγαίνουν για το GP2X πια. Και φυσικά το GP32 πέθανε!


Έτσι και εγώ, επειδή πήρα το καινούριο στα χέρια μου αποφάσισα να τελειώνω με το demo που είχα ξεκινήσει να γράφω στο παλιό από το προηγούμενο καλοκαίρι και τόσο λαχταρούσα να κάνω release. Έχει 3-4 μέρες που βγήκε σε sites της demoscene (www.pouet.net) ή της Gamepark community (www.gp32x.com) και είμαι πολύ ευχαριστημένος με τα σχόλια. Αν και υστερεί σε πολλά σημεία, ίσως είναι μια από τις λίγες φορές που ξαναζώ αυτό το συναίσθημα του να κάνω release μια μεγάλη μου δουλειά και να χαλαρώνω μετά από μέρες coding διαβάζοντας τα comments στα ενλόγω sites. Πρώτη φορά λαμβάνω τόσα θετικά σχόλια στο Pouet και ειδικά να φτάσει ένα demo μου δεύτερο στα top του μήνα! Μπορώ να είμαι ιδιαίτερα χαρούμενος για αυτό :)

Το demo γράφτηκε σε C και χρησιμοποιεί το official SDK της Gamepark. Για να μην κουράζομαι με τη διαδικασία compile->σύρε καλώδιο USB->transfer->boot GP32->τρέξε στο menu->ααα δεν δουλεύει, πάμε πάλι πίσω στον PC να δούμε τις φταίει,.. έφτιαξα και ένα SDL port στις αρχές του developing, κάτι σαν wrapper των functions του Gamepark SDK, ώστε να γράφω κώδικα και να τον τρέχω στον PC σε κάτι σαν simulation του πως θα φαίνεται αντίστοιχα στο GP32. Και αφού δουλεύουν όλα, αντιγράφω τον κώδικα στο Gamepark (με ορισμένες αλλαγές που έκανα με το χέρι όμως, μια και δεν είχα αντιγράψει τέλεια την λογική όλων των functions και για άλλους λόγους. Not fully cross compilation δηλ.) και μάλλον θα δουλεύει και εκεί (είχε και να μην δουλεύει ;P). Το καλό της υπόθεσης έτσι όμως, είναι ότι είχα και PC port για ταυτόχρονο release (πολλοί λίγοι sceners έχουν GP32, οπότε οι περισσότεροι θα ήθελαν να το δουν στον PC, άσε που δεν υπάρχει και σωστός emulator). Και μια και είχα το PC port έτοιμο, έβγαλα βασισμένος σε αυτό και ένα βιαστικό port για το καινούριο GP2X ενώ ο φίλος μου έσυρε Linux32/64bit, FreeBSD και SGI Iris ports παρακαλώ! (Τα καλά του opensource θα πει ;). Ο κώδικας είναι opensource (πολιτική του demogroup Mindlapse (mindlapse.demoscene.gr) under which έγινε release το demo) οπότε όποιος γουστάρει να το κάνει port για οποιαδήποτε άλλη πλατφόρμα, ελεύθερα! (Απλώς στείλτε μου ένα μήνυμα να ξέρω)

Με το Gamepark32 είχα την καλύτερες μου στιγμές όσον αφορά το satisfaction του προγραμματιστή και της εμπειρίας που απέκτισα. Έφτιαξα επιτέλους την πρώτη μου software 3d engine (πρωτύτερα κούραζα κυρίως 2d graphics), δούλεψα σε ένα limited περιβάλλον που θυμίζει 486/Pentium δίχως FPU, δοκίμασα διάφορα optimizations και είδα πόσο τον πίνεις με τόσο μικρή cache, ακόμα και με τα makefiles και τα toolchains του gcc κουράστικα και εξεικιώθηκα (Με το GP2X προβλέπεται να βάλω και Linux ;))). Τρομερή εμπειρία με θετικό αποτέλεσμα. Η χαρά του achievement και ο κόσμος που πέρασε καλά για 5 λεπτά βλέποντας το demo σου που το έφτιαχνες για ένα χρόνο :) Άντε και εις ανώτερα με το GP2X. Προς το παρόν θέλω να ξεκουραστώ. Θα ρίξω μια ματιά στα σχόλια, θα προσπαθήσω να απαντήσω στα numerous emails που πήρα με τα συγχαρητήρια και requests για συνεργασία/ερωτήσεις. Θα αγναντέψω στο παρελθόν, να αφουγκραστώ την εξέλιξη μου. Ή απλά θα πάω να κοιμηθώ και θα σας αφήσω στην ησυχία..

(Στην τελευταία φωτογραφία το τελευταίο part του demo μου με την Jennifer Love Hewitt, τρελό inspiration για τους καμμένους coder σαν κι εμένα, συν ένα όμορφο 3d flower να κάνει κυματάκια στο νερό ^_^)

Link για το demo (κατεβάστε την PC version αν δεν έχετε Gamepark console (χάνετε!))
Locations of visitors to this page