ΓΙΑ ΕΝΗΜΕΡΩΣΗ ΚΑΙ ΣΧΟΛΙΑΣΜΟ. ---------- Forwarded message ---------- From: whoneedselta <whoneedselta [ at ] softnet [ dot ] tuc [ dot ] gr> Date: 2009/2/15 Subject: Πρόταση για Διαγωνισμό ΕΛ/ΑΚ To: info [ at ] ellak [ dot ] gr =================== Misha Research-IDE =================== ----------------------------------------------------------------------------------------- Ανάπτυξη ενός ερευνητικού IDE με έμφαση σε καινούργιες δυνατότητες αποσφαλμάτωσης κώδικα ----------------------------------------------------------------------------------------- .. image:: http://www.softnet.tuc.gr/~whoneedselta/share/misha_ride_logo.jpg :Project Page: https://launchpad.net/misha (Screenshots_) :Lead Developer: Παπούλιας Νίκος (Launchpad_) :Διεύθυνση: Μάρκου Μπότσαρη 32, Χανιά, Κρήτη :E-mail: whoneedselta [ at ] softnet [ dot ] tuc [ dot ] gr :ΑΦΜ: 125261742 :Ίδρυμα: Πολυτεχνείο Κρήτης (Technical University of Crete) :Date: Kυρ, 15 Φλεβάρη 2009 :Status: Work in "Progress" - a POC (proof of concept) version available .. _Screenshots: http://www.flickr.com/photos/35276765@N05/ .. _Launchpad: https://launchpad.net/~whoneedselta Περίληψη -------- To Misha IDE είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης λογισμικού προσανατολισμένο στην γλώσσα C το οποίο εισάγει καινούργιες δυνατότητες αποσφαλμάτωσης κώδικα για τον προγραμματιστή. Οι νέες αυτές δυνατότητες το καθιστούν μεταξύ άλλων και ένα εξαίρετο παιδαγωγικό εργαλείο για την εκμάθηση προγραμματισμού προχωρημένου επιπέδου (στην τριτοβάθμια εκπαίδευση) αλλά όχι μόνο. Είναι βασισμένο σε διπλωματική εργασία που θα παρουσιαστεί εντός του επόμενου μήνα στο Πολυτεχνείο Κρήτης, με τίτλο : "High-Level Debuggers Facilities and Ιnterfaces" η περιγραφή της οποίας είναι προσβάσιμη εδώ: PositionalPaper_ .. _PositionalPaper: http://www.softnet.tuc.gr/~whoneedselta/share/high_level_debuggers.pdf Ιστορικό -------- Η σημερινή ανάπτυξη των IDEs αν και είναι ραγδαία, και απλώνεται τόσο εντατικά σε καινούργιες μεθόδους και εργαλεία όσο και εκτατικά βελτιστοποιώντας τις ήδη υπάρχουσες τεχνολογίες, έχει αφήσει τα συστήματα αποσφαλμάτωσης κώδικα (debuggers) στο επίπεδο των δυνατοτήτων της δεκαετίας του '80 χωρίς ποιοτικές βελτιώσεις στις δυνατότητες τις οποίες προσφέρουν στον προγραμματιστή. Στις περισότερες περιπτώσεις αυτό που υλοποιείται είναι ένα gui frontend στις ήδη υπάρχουσες δυνατότητες των debugging-backends βλ. gdb δίχως την εκμετάλευση των δυνατοτήτων της σημερινής τεχνολογίας (σε επεξεργαστική ισχύ και μνήμη) για πιο εντατική παρακολούθηση της ροής ενός προγράμματος και των δεδομένων του. Δεδομένου ότι η αποσφαλμάτωση κώδικα καταλαμβάνει ένα σημαντικό κομμάτι του χρόνου ανάπτυξης ενός project, δημιουργείται μια αναντιστοιχία πλέον μεταξύ της σημαντικότητας του debugging και των διαθέσιμων εργαλείων στα IDEs. Τον τελευταίο καιρό αν και έχει αρχίσει να αναζωογονείται το ενδιαφέρον για τους αποσφαλματωτές, με το FSF να κατατάσει την υλοποίηση του reverse-debugging στα high-priority projects του, όλα τα μεγάλα IDEs της κοινότητας (Eclipse,Netbeans,Anjuta,KDevelop) αλλά και τα εμπορικά δεν έχουν ακόμη αρχίσει να υιοθετούν (πόσο μάλλον να αναπτύσουν) τις νέες αυτές δυνατότητες. Στόχοι ------ Δεδομένων των παραπάνω παρατηρήσεων, το project στοχεύει στην δημιουργία συστημάτων αποσφαλμάτωσης κώδικα "υψηλού επιπέδου" που θα συνδυάζουν τις δυνατότητες των source-level debuggers (όπως ο gdb) με άλλα συστήματα (όπως ansi-c parser, πακέτα data-visualisation κ.α) υλοποιώντας έτσι καινούργιες δυνατότητες αποσφαλμάτωσης μέσω μιας διαισθητικής διαπροσωπίας. Παράλληλα αφουγκραζόμενο τις προτάσεις της κοινότητας υλοποιεί τις καινούργιες δυνατότητες που προτάσσονται και αναπτύσσονται από το fsf και το project του gdb (όπως για παράδειγμα το reverse-debugging), εντάσσοντάς τες στην λογική των "High-Level Debuggers". Πιο συγκεκριμένα το Misha-IDE στοχεύει στο να εισάγει δυνατότητες αποσφαλμάτωσης κώδικα ανά συντακτικές μονάδες (Syntax Aware Debugging), Data Visualisation (graphs) των δεδομένων (βλ. και DDD), τεχνικές Reverse-debugging και Debugging-scripting μέσω της γλώσσας python και μια πλειάδα άλλων διευκολύνσεων όπως human-mode debugging και speech commands. Μεταξύ άλλων το Misha-IDE ανοίγει και τον δρόμο για μια νέου τύπου πολυ-γλωσσική σχεδίαση κώδικα, αφού επιτρέπει την απευθείας κλήση των C-routines του project που αναπτύσσει ο προγραμματιστής από την scripting γλώσσσα (python) του περιβάλλοντος. Αξίζει να σημειώσουμε εδώ ότι πολλές από τις τεχνολογίες του project θα μπορούσαν να χρησιμοποιηθούν και ανεξάρτητα από το IDE σε άλλα projects της κοινότητας, όπως για παράδειγμα o ansi-c parser που ολοκληρώνεται αυτόν τον μήνα (και χρησιμοποιείται τόσο για debugging purposes, όσο και για symbol browsing, completition κ.τ.λ) Παραδοτέα --------- - Κώδικας σε C και Python που θα υλοποιεί όλους τους παραπάνω στόχους - Public repository με τον κώδικα στο launchpad - Unit-Testing, Code-Documentation, User-Manual, Plugin-HowTo, Video Tutorials, Internationalization - Deb και RPM πακέτα, έτοιμα προς εγκατάσταση για Fedora, Ubuntu Χρονοδιάγραμμα -------------- - 20/3: Δημοσίευση POC (proof of concept) version στο launchpad - 20/4: Unit-Testing, Refactoring, Code-Documentation, Internationalization - 20/5: Manuals, Video Tutorials, Packaging Βιογραφικό ---------- Ο Νίκος Παπούλιας είναι επι-πτυχίο φοιτητής στο Πολυτεχνείο Κρήτης, και ενεργό μέλος της Ομάδας Ελεύθερου Λογισμικού του Ιδρύματος. Στο ενεργητικό του εχει projects από διάφορα πεδία της επιστήμης των υπολογιστών, όπως η κρυπτογραφία (Gost Hardware Implementation) και τα συστήματα αναγνώρισης φωνής (Εκμάθηση συστημάτων από transcriptions ταινιών). Tα κύρια ενδιαφέροντά του όμως είναι τα συστήματα ανάπτυξης λογισμικού και οι γλώσσες προγραμματισμού, ενώ παράλληλα συμμετέχει ενεργά στην διάδοση του ελεύθερου λογισμικού στην εκπαίδευση. Στο παρελθόν έχει εισηγηθεί στο Πανελλήνιο Συνέδριο Kαθηγητών Πληροφορικής, με θέμα "Το ελεύθερο Λογισμικό στην β' θμια εκπαίδευση". Το moto του είναι: Free Software, NEEDS Free Societies. Για τον διαγωνισμό ------------------ Το project που περιγράφεται παραπάνω έχει ήδη ένα code-base στα πλαίσια της εκπόνησης της διπλωματικής μου εργασίας στο Πολυτεχνείο Κρήτης. Ωστόσο από μία διπλωματική εώς ένα επιτυχημένο free software project ο δρόμος είναι μακρύς, ιδιαίτερα για ανθρώπους που θέλουν να κρατήσουν το project τους ΑΝΕΞΑΡΤΗΤΟ από αγοραίες επιλογές και επηρεασμούς. Η χρηματοδότηση λοιπόν από ένα μη-κερδοσκοπικό οργανισμό σαν το ΕΛ/ΛΑΚ που δίνει έμφαση στις επιλογές των ελεύθερων αδειών χρήσης θα 'ναι μια ευχάριστη συγκυρία που θα προσφέρει τις υλικές προυποθέσεις ανάπτυξης που χρειάζεται ένα τέτοιο project για να υιοθετηθεί από την κοινότητα ως ταυτόχρονα δημιουργικό αλλά ΚΑΙ ΟΛΟΚΛΗΡΩΜΕΝΟ. Αναφορές -------- - Priority Projects του FSF: http://www.fsf.org/campaings/priority.html - Reversible Debugging: http://sourceware.org/gdb/news/reversible.html - GDB record: http://sourceforge.net/projects/record - Data Displaying: http://www.gnu.org/software/ddd/ - Positional Paper: http://www.softnet.tuc.gr/~whoneedselta/share/high_level_debuggers.pdf - Screenshots: http://www.flickr.com/photos/35276765@N05/ - Conferences: http://www.keplinet-chanion.gr/index.php?option=com_content&task=view&id=174&Itemid=127 - Misha Mascot: http://en.wikipedia.org/wiki/Misha =================== Misha Research-IDE =================== ----------------------------------------------------------------------------------------- Ανάπτυξη ενός ερευνητικού IDE με έμφαση σε καινούργιες δυνατότητες αποσφαλμάτωσης κώδικα ----------------------------------------------------------------------------------------- .. image:: http://www.softnet.tuc.gr/~whoneedselta/share/misha_ride_logo.jpg :Project Page: https://launchpad.net/misha (Screenshots_) :Lead Developer: Παπούλιας Νίκος (Launchpad_) :Διεύθυνση: Μάρκου Μπότσαρη 32, Χανιά, Κρήτη :E-mail: whoneedselta [ at ] softnet [ dot ] tuc [ dot ] gr :ΑΦΜ: 125261742 :Ίδρυμα: Πολυτεχνείο Κρήτης (Technical University of Crete) :Date: Kυρ, 15 Φλεβάρη 2009 :Status: Work in "Progress" - a POC (proof of concept) version available .. _Screenshots: http://www.flickr.com/photos/35276765@N05/ .. _Launchpad: https://launchpad.net/~whoneedselta Περίληψη -------- To Misha IDE είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης λογισμικού προσανατολισμένο στην γλώσσα C το οποίο εισάγει καινούργιες δυνατότητες αποσφαλμάτωσης κώδικα για τον προγραμματιστή. Οι νέες αυτές δυνατότητες το καθιστούν μεταξύ άλλων και ένα εξαίρετο παιδαγωγικό εργαλείο για την εκμάθηση προγραμματισμού προχωρημένου επιπέδου (στην τριτοβάθμια εκπαίδευση) αλλά όχι μόνο. Είναι βασισμένο σε διπλωματική εργασία που θα παρουσιαστεί εντός του επόμενου μήνα στο Πολυτεχνείο Κρήτης, με τίτλο : "High-Level Debuggers Facilities and Ιnterfaces" η περιγραφή της οποίας είναι προσβάσιμη εδώ: PositionalPaper_ .. _PositionalPaper: http://www.softnet.tuc.gr/~whoneedselta/share/high_level_debuggers.pdf Ιστορικό -------- Η σημερινή ανάπτυξη των IDEs αν και είναι ραγδαία, και απλώνεται τόσο εντατικά σε καινούργιες μεθόδους και εργαλεία όσο και εκτατικά βελτιστοποιώντας τις ήδη υπάρχουσες τεχνολογίες, έχει αφήσει τα συστήματα αποσφαλμάτωσης κώδικα (debuggers) στο επίπεδο των δυνατοτήτων της δεκαετίας του '80 χωρίς ποιοτικές βελτιώσεις στις δυνατότητες τις οποίες προσφέρουν στον προγραμματιστή. Στις περισότερες περιπτώσεις αυτό που υλοποιείται είναι ένα gui frontend στις ήδη υπάρχουσες δυνατότητες των debugging-backends βλ. gdb δίχως την εκμετάλευση των δυνατοτήτων της σημερινής τεχνολογίας (σε επεξεργαστική ισχύ και μνήμη) για πιο εντατική παρακολούθηση της ροής ενός προγράμματος και των δεδομένων του. Δεδομένου ότι η αποσφαλμάτωση κώδικα καταλαμβάνει ένα σημαντικό κομμάτι του χρόνου ανάπτυξης ενός project, δημιουργείται μια αναντιστοιχία πλέον μεταξύ της σημαντικότητας του debugging και των διαθέσιμων εργαλείων στα IDEs. Τον τελευταίο καιρό αν και έχει αρχίσει να αναζωογονείται το ενδιαφέρον για τους αποσφαλματωτές, με το FSF να κατατάσει την υλοποίηση του reverse-debugging στα high-priority projects του, όλα τα μεγάλα IDEs της κοινότητας (Eclipse,Netbeans,Anjuta,KDevelop) αλλά και τα εμπορικά δεν έχουν ακόμη αρχίσει να υιοθετούν (πόσο μάλλον να αναπτύσουν) τις νέες αυτές δυνατότητες. Στόχοι ------ Δεδομένων των παραπάνω παρατηρήσεων, το project στοχεύει στην δημιουργία συστημάτων αποσφαλμάτωσης κώδικα "υψηλού επιπέδου" που θα συνδυάζουν τις δυνατότητες των source-level debuggers (όπως ο gdb) με άλλα συστήματα (όπως ansi-c parser, πακέτα data-visualisation κ.α) υλοποιώντας έτσι καινούργιες δυνατότητες αποσφαλμάτωσης μέσω μιας διαισθητικής διαπροσωπίας. Παράλληλα αφουγκραζόμενο τις προτάσεις της κοινότητας υλοποιεί τις καινούργιες δυνατότητες που προτάσσονται και αναπτύσσονται από το fsf και το project του gdb (όπως για παράδειγμα το reverse-debugging), εντάσσοντάς τες στην λογική των "High-Level Debuggers". Πιο συγκεκριμένα το Misha-IDE στοχεύει στο να εισάγει δυνατότητες αποσφαλμάτωσης κώδικα ανά συντακτικές μονάδες (Syntax Aware Debugging), Data Visualisation (graphs) των δεδομένων (βλ. και DDD), τεχνικές Reverse-debugging και Debugging-scripting μέσω της γλώσσας python και μια πλειάδα άλλων διευκολύνσεων όπως human-mode debugging και speech commands. Μεταξύ άλλων το Misha-IDE ανοίγει και τον δρόμο για μια νέου τύπου πολυ-γλωσσική σχεδίαση κώδικα, αφού επιτρέπει την απευθείας κλήση των C-routines του project που αναπτύσσει ο προγραμματιστής από την scripting γλώσσσα (python) του περιβάλλοντος. Αξίζει να σημειώσουμε εδώ ότι πολλές από τις τεχνολογίες του project θα μπορούσαν να χρησιμοποιηθούν και ανεξάρτητα από το IDE σε άλλα projects της κοινότητας, όπως για παράδειγμα o ansi-c parser που ολοκληρώνεται αυτόν τον μήνα (και χρησιμοποιείται τόσο για debugging purposes, όσο και για symbol browsing, completition κ.τ.λ) Παραδοτέα --------- - Κώδικας σε C και Python που θα υλοποιεί όλους τους παραπάνω στόχους - Public repository με τον κώδικα στο launchpad - Unit-Testing, Code-Documentation, User-Manual, Plugin-HowTo, Video Tutorials, Internationalization - Deb και RPM πακέτα, έτοιμα προς εγκατάσταση για Fedora, Ubuntu Χρονοδιάγραμμα -------------- - 20/3: Δημοσίευση POC (proof of concept) version στο launchpad - 20/4: Unit-Testing, Refactoring, Code-Documentation, Internationalization - 20/5: Manuals, Video Tutorials, Packaging Βιογραφικό ---------- Ο Νίκος Παπούλιας είναι επι-πτυχίο φοιτητής στο Πολυτεχνείο Κρήτης, και ενεργό μέλος της Ομάδας Ελεύθερου Λογισμικού του Ιδρύματος. Στο ενεργητικό του εχει projects από διάφορα πεδία της επιστήμης των υπολογιστών, όπως η κρυπτογραφία (Gost Hardware Implementation) και τα συστήματα αναγνώρισης φωνής (Εκμάθηση συστημάτων από transcriptions ταινιών). Tα κύρια ενδιαφέροντά του όμως είναι τα συστήματα ανάπτυξης λογισμικού και οι γλώσσες προγραμματισμού, ενώ παράλληλα συμμετέχει ενεργά στην διάδοση του ελεύθερου λογισμικού στην εκπαίδευση. Στο παρελθόν έχει εισηγηθεί στο Πανελλήνιο Συνέδριο Kαθηγητών Πληροφορικής, με θέμα "Το ελεύθερο Λογισμικό στην β' θμια εκπαίδευση". Το moto του είναι: Free Software, NEEDS Free Societies. Για τον διαγωνισμό ------------------ Το project που περιγράφεται παραπάνω έχει ήδη ένα code-base στα πλαίσια της εκπόνησης της διπλωματικής μου εργασίας στο Πολυτεχνείο Κρήτης. Ωστόσο από μία διπλωματική εώς ένα επιτυχημένο free software project ο δρόμος είναι μακρύς, ιδιαίτερα για ανθρώπους που θέλουν να κρατήσουν το project τους ΑΝΕΞΑΡΤΗΤΟ από αγοραίες επιλογές και επηρεασμούς. Η χρηματοδότηση λοιπόν από ένα μη-κερδοσκοπικό οργανισμό σαν το ΕΛ/ΛΑΚ που δίνει έμφαση στις επιλογές των ελεύθερων αδειών χρήσης θα 'ναι μια ευχάριστη συγκυρία που θα προσφέρει τις υλικές προυποθέσεις ανάπτυξης που χρειάζεται ένα τέτοιο project για να υιοθετηθεί από την κοινότητα ως ταυτόχρονα δημιουργικό αλλά ΚΑΙ ΟΛΟΚΛΗΡΩΜΕΝΟ. Αναφορές -------- - Priority Projects του FSF: http://www.fsf.org/campaings/priority.html - Reversible Debugging: http://sourceware.org/gdb/news/reversible.html - GDB record: http://sourceforge.net/projects/record - Data Displaying: http://www.gnu.org/software/ddd/ - Positional Paper: http://www.softnet.tuc.gr/~whoneedselta/share/high_level_debuggers.pdf - Screenshots: http://www.flickr.com/photos/35276765@N05/ - Conferences: http://www.keplinet-chanion.gr/index.php?option=com_content&task=view&id=174&Itemid=127 - Misha Mascot: http://en.wikipedia.org/wiki/Misha -- Πριν εκτυπώσετε αυτό το μήνυμα, σκεφθείτε το περιβάλλον! Ένα χαρτί λιγότερο! - http://karounos.gr/blog/
=================== Misha Research-IDE =================== ----------------------------------------------------------------------------------------- Ανάπτυξη ενός ερευνητικού IDE με έμφαση σε καινούργιες δυνατότητες αποσφαλμάτωσης κώδικα ----------------------------------------------------------------------------------------- .. image:: http://www.softnet.tuc.gr/~whoneedselta/share/misha_ride_logo.jpg :Project Page: https://launchpad.net/misha (Screenshots_) :Lead Developer: Παπούλιας Νίκος (Launchpad_) :Διεύθυνση: Μάρκου Μπότσαρη 32, Χανιά, Κρήτη :E-mail: whoneedselta [ at ] softnet [ dot ] tuc [ dot ] gr :ΑΦΜ: 125261742 :Ίδρυμα: Πολυτεχνείο Κρήτης (Technical University of Crete) :Date: Kυρ, 15 Φλεβάρη 2009 :Status: Work in "Progress" - a POC (proof of concept) version available .. _Screenshots: http://www.flickr.com/photos/35276765@N05/ .. _Launchpad: https://launchpad.net/~whoneedselta Περίληψη -------- To Misha IDE είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης λογισμικού προσανατολισμένο στην γλώσσα C το οποίο εισάγει καινούργιες δυνατότητες αποσφαλμάτωσης κώδικα για τον προγραμματιστή. Οι νέες αυτές δυνατότητες το καθιστούν μεταξύ άλλων και ένα εξαίρετο παιδαγωγικό εργαλείο για την εκμάθηση προγραμματισμού προχωρημένου επιπέδου (στην τριτοβάθμια εκπαίδευση) αλλά όχι μόνο. Είναι βασισμένο σε διπλωματική εργασία που θα παρουσιαστεί εντός του επόμενου μήνα στο Πολυτεχνείο Κρήτης, με τίτλο : "High-Level Debuggers Facilities and Ιnterfaces" η περιγραφή της οποίας είναι προσβάσιμη εδώ: PositionalPaper_ .. _PositionalPaper: http://www.softnet.tuc.gr/~whoneedselta/share/high_level_debuggers.pdf Ιστορικό -------- Η σημερινή ανάπτυξη των IDEs αν και είναι ραγδαία, και απλώνεται τόσο εντατικά σε καινούργιες μεθόδους και εργαλεία όσο και εκτατικά βελτιστοποιώντας τις ήδη υπάρχουσες τεχνολογίες, έχει αφήσει τα συστήματα αποσφαλμάτωσης κώδικα (debuggers) στο επίπεδο των δυνατοτήτων της δεκαετίας του '80 χωρίς ποιοτικές βελτιώσεις στις δυνατότητες τις οποίες προσφέρουν στον προγραμματιστή. Στις περισότερες περιπτώσεις αυτό που υλοποιείται είναι ένα gui frontend στις ήδη υπάρχουσες δυνατότητες των debugging-backends βλ. gdb δίχως την εκμετάλευση των δυνατοτήτων της σημερινής τεχνολογίας (σε επεξεργαστική ισχύ και μνήμη) για πιο εντατική παρακολούθηση της ροής ενός προγράμματος και των δεδομένων του. Δεδομένου ότι η αποσφαλμάτωση κώδικα καταλαμβάνει ένα σημαντικό κομμάτι του χρόνου ανάπτυξης ενός project, δημιουργείται μια αναντιστοιχία πλέον μεταξύ της σημαντικότητας του debugging και των διαθέσιμων εργαλείων στα IDEs. Τον τελευταίο καιρό αν και έχει αρχίσει να αναζωογονείται το ενδιαφέρον για τους αποσφαλματωτές, με το FSF να κατατάσει την υλοποίηση του reverse-debugging στα high-priority projects του, όλα τα μεγάλα IDEs της κοινότητας (Eclipse,Netbeans,Anjuta,KDevelop) αλλά και τα εμπορικά δεν έχουν ακόμη αρχίσει να υιοθετούν (πόσο μάλλον να αναπτύσουν) τις νέες αυτές δυνατότητες. Στόχοι ------ Δεδομένων των παραπάνω παρατηρήσεων, το project στοχεύει στην δημιουργία συστημάτων αποσφαλμάτωσης κώδικα "υψηλού επιπέδου" που θα συνδυάζουν τις δυνατότητες των source-level debuggers (όπως ο gdb) με άλλα συστήματα (όπως ansi-c parser, πακέτα data-visualisation κ.α) υλοποιώντας έτσι καινούργιες δυνατότητες αποσφαλμάτωσης μέσω μιας διαισθητικής διαπροσωπίας. Παράλληλα αφουγκραζόμενο τις προτάσεις της κοινότητας υλοποιεί τις καινούργιες δυνατότητες που προτάσσονται και αναπτύσσονται από το fsf και το project του gdb (όπως για παράδειγμα το reverse-debugging), εντάσσοντάς τες στην λογική των "High-Level Debuggers". Πιο συγκεκριμένα το Misha-IDE στοχεύει στο να εισάγει δυνατότητες αποσφαλμάτωσης κώδικα ανά συντακτικές μονάδες (Syntax Aware Debugging), Data Visualisation (graphs) των δεδομένων (βλ. και DDD), τεχνικές Reverse-debugging και Debugging-scripting μέσω της γλώσσας python και μια πλειάδα άλλων διευκολύνσεων όπως human-mode debugging και speech commands. Μεταξύ άλλων το Misha-IDE ανοίγει και τον δρόμο για μια νέου τύπου πολυ-γλωσσική σχεδίαση κώδικα, αφού επιτρέπει την απευθείας κλήση των C-routines του project που αναπτύσσει ο προγραμματιστής από την scripting γλώσσσα (python) του περιβάλλοντος. Αξίζει να σημειώσουμε εδώ ότι πολλές από τις τεχνολογίες του project θα μπορούσαν να χρησιμοποιηθούν και ανεξάρτητα από το IDE σε άλλα projects της κοινότητας, όπως για παράδειγμα o ansi-c parser που ολοκληρώνεται αυτόν τον μήνα (και χρησιμοποιείται τόσο για debugging purposes, όσο και για symbol browsing, completition κ.τ.λ) Παραδοτέα --------- - Κώδικας σε C και Python που θα υλοποιεί όλους τους παραπάνω στόχους - Public repository με τον κώδικα στο launchpad - Unit-Testing, Code-Documentation, User-Manual, Plugin-HowTo, Video Tutorials, Internationalization - Deb και RPM πακέτα, έτοιμα προς εγκατάσταση για Fedora, Ubuntu Χρονοδιάγραμμα -------------- - 20/3: Δημοσίευση POC (proof of concept) version στο launchpad - 20/4: Unit-Testing, Refactoring, Code-Documentation, Internationalization - 20/5: Manuals, Video Tutorials, Packaging Βιογραφικό ---------- Ο Νίκος Παπούλιας είναι επι-πτυχίο φοιτητής στο Πολυτεχνείο Κρήτης, και ενεργό μέλος της Ομάδας Ελεύθερου Λογισμικού του Ιδρύματος. Στο ενεργητικό του εχει projects από διάφορα πεδία της επιστήμης των υπολογιστών, όπως η κρυπτογραφία (Gost Hardware Implementation) και τα συστήματα αναγνώρισης φωνής (Εκμάθηση συστημάτων από transcriptions ταινιών). Tα κύρια ενδιαφέροντά του όμως είναι τα συστήματα ανάπτυξης λογισμικού και οι γλώσσες προγραμματισμού, ενώ παράλληλα συμμετέχει ενεργά στην διάδοση του ελεύθερου λογισμικού στην εκπαίδευση. Στο παρελθόν έχει εισηγηθεί στο Πανελλήνιο Συνέδριο Kαθηγητών Πληροφορικής, με θέμα "Το ελεύθερο Λογισμικό στην β' θμια εκπαίδευση". Το moto του είναι: Free Software, NEEDS Free Societies. Για τον διαγωνισμό ------------------ Το project που περιγράφεται παραπάνω έχει ήδη ένα code-base στα πλαίσια της εκπόνησης της διπλωματικής μου εργασίας στο Πολυτεχνείο Κρήτης. Ωστόσο από μία διπλωματική εώς ένα επιτυχημένο free software project ο δρόμος είναι μακρύς, ιδιαίτερα για ανθρώπους που θέλουν να κρατήσουν το project τους ΑΝΕΞΑΡΤΗΤΟ από αγοραίες επιλογές και επηρεασμούς. Η χρηματοδότηση λοιπόν από ένα μη-κερδοσκοπικό οργανισμό σαν το ΕΛ/ΛΑΚ που δίνει έμφαση στις επιλογές των ελεύθερων αδειών χρήσης θα 'ναι μια ευχάριστη συγκυρία που θα προσφέρει τις υλικές προυποθέσεις ανάπτυξης που χρειάζεται ένα τέτοιο project για να υιοθετηθεί από την κοινότητα ως ταυτόχρονα δημιουργικό αλλά ΚΑΙ ΟΛΟΚΛΗΡΩΜΕΝΟ. Αναφορές -------- - Priority Projects του FSF: http://www.fsf.org/campaings/priority.html - Reversible Debugging: http://sourceware.org/gdb/news/reversible.html - GDB record: http://sourceforge.net/projects/record - Data Displaying: http://www.gnu.org/software/ddd/ - Positional Paper: http://www.softnet.tuc.gr/~whoneedselta/share/high_level_debuggers.pdf - Screenshots: http://www.flickr.com/photos/35276765@N05/ - Conferences: http://www.keplinet-chanion.gr/index.php?option=com_content&task=view&id=174&Itemid=127 - Misha Mascot: http://en.wikipedia.org/wiki/Misha