P-Space
28Apr/132

Η Άξια Τέχνη του Vim

Ο vim είναι ένας text editor, ο οποίος πρωτοεμφανίστηκε το 1991, και ο οποίος ακόμα χρησιμοποιείται ευρέως, και είναι κάτω από ενεργή ανάπτυξη. Φτιάχτηκε βασισμένος σε έναν ακόμα πιο παλιό text editor, τον vi, ο οποίος πρωτοεμφανίστηκε το 1975, αλλά προσέθεσε σημαντικά περισσότερη λειτουργικότητα χωρίς να χαλάσει την απλότητα της βασικής διαδικασίας επεξεργασίας ενός κειμένου. Έχει ενθουσιώδεις χρήστες στο open source community, και είναι ο αγαπημένος προγραμματιστών και system administrators.

Μία από τις σχεδιαστικές αρχές του UNIX είναι κάθε πρόγραμμα να κάνει μόνο ένα πράγμα και να το κάνει καλά. Δε θα βρούμε text editor καλύτερο στην εισαγωγή και επεξεργασία κειμένου από τον vim. Μπορούμε ίσως να βρούμε κάποιον ευκολότερο στην εκμάθηση, με πιο φιλικό interface, με καλύτερη scripting γλώσσα, αλλά στη μία δουλειά για την οποία είναι ουσιαστικά φτιαγμένος ένας editor, δηλαδή την παροχή της δυνατότητας να εισάγουμε και να διορθώσουμε κείμενο όσο το δυνατόν πιο αποδοτικά, δεν υπάρχει κάτι καλύτερο.

Στη παρουσίαση θα δούμε λίγο πιο αναλυτικά την ιστορία και προϊστορία του vim, και θα παρουσιάσουμε πως μπορεί να χρησιμοποιηθεί ο vim για την επεξεργασία ενός απλού κειμένου. Θα δούμε γιατί είναι τόσο αποδοτικός, αλλά επίσης και γιατί φαίνεται τόσο δύσκολος σε αυτούς που τον πρωτογνωρίζουν. Δε θα μάθουμε τα πάντα, αλλά θα μάθουμε αρκετά ώστε να μπορέσουμε να κάνουμε μόνοι μας τα επόμενα βήματα στο vim.

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

Όπως η νύφη στην ταινία Kill Bill καυχιέται στον δάσκαλό της Πάι Μέι ότι γνωρίζει την "άξια τέχνη του Γιαπωνέζικου σπαθιού", ελάτε να μυηθείτε κι εσείς στα μυστικά της "άξιας τέχνης του vim"! Πέμπτη 23/5 και ώρα 19:00, στο P-Space λοιπόν!

Πρόγραμμα Παρουσίασης:
1. Ιστορική αναδρομή
  • Προ visual editing (ed)
  • Η εμφάνιση του vi
  • Λοιποί Κλώνοι
  • Απαρχή του Vim και εξέλιξη μέχρι σήμερα
  • Πλεονεκτήματα του vim σε σχέση με πιο απλούς editors
2. Βασικές έννοιες και λειτουργίες του vim
  • Εξήγηση των modes
  • Βασικές εντολές κίνησης
  • Βασικές εντολές τροποποίησης κειμένου
  • Εξήγηση του συστήματος βοήθειας του vim
  • Παράδειγμα εισαγωγής απλού κειμένου και διόρθωσής του
3. Χρήση του vim ως προγραμματιστικού περιβάλλοντος
  • Επεξήγηση Buffers
  • Χωρισμός παραθύρου σε περιοχές
  • Πολλαπλά tabs
  • Quickfix list
  • Παράδειγμα edit compile fix cycle για ένα μικρό πρόγραμμα γραμμένο σε C
Update: Video παρουσίασης...
Filed under: Events, FOSS 2 Comments
12Apr/130

Compilers [mov rax, 0x0a732f6e696f; /bin/sh\n]

Δεδομένου ότι ερχόμαστε καθημερινά σε επαφή με υπολογιστές, οι πιθανότητες λένε ότι μέχρι σήμερα όλοι μας έχουμε χρησιμοποιήσει έναν compiler ή και interpreter, είτε το γνωρίζουμε είτε όχι. Έχετε αναρωτηθεί ποτέ πώς ο υπολογιστής σας διαβάζει τον κώδικα που του δίνετε; Έχετε αναρωτηθεί πώς γίνεται η αναγνώριση αυτής της κατά τα άλλα ακολουθίας χαρακτήρων; Πιθανώς να πιστεύετε ότι δε σας αφορά το θέμα... η αλήθεια όμως είναι διαφορετική. Εϊναι άκρως εκπαιδευτικό να δει κανείς πως γίνεται η διαδικασία της μεταγλώττισης, πώς σπάει ο κώδικάς μας σε λέξεις και προτάσεις και τους δίνεται νοήμα και περιεχόμενο. Ακολουθώντας την οδό αυτή, φτάνουμε στο σημείο να κατανοήσουμε καλύτερα τους κανόνες που υφίστανται σε μία γλώσσα προγραμματισμού, να αποβάλλουμε τις όποιες αμφιβολίες και διλήμματα είχαμε στο παρελθόν, και να αποκτήσουμε μία νέα οπτική που θα μας κάνει καλύτερους προγραμματιστές, όποιες και αν είναι οι γλώσσες προγραμματισμού που χρησιμοποιούμε.

Την Τετάρτη λοιπόν, 24/04/2013 στις 20:00 θα πραγματοποιηθεί παρουσίαση με αντικείμενο τους μεταγλωττιστές. Συγκεκριμένα, θα εξετάσουμε τα βήματα που ακολουθεί ένας μεταγλωττιστής προκειμένου να μετατρέψει τον κώδικα μιας γλώσσας υψηλού επιπέδου σε assembly. Στο πλαίσιο αυτό θα παρουσιάσουμε δύο κλασικά εργαλεία (Flex, Bison) που χρησιμοποιούνται για την αναπαράσταση μιας γλώσσας προγραμματισμού, και τέλος θα εξηγήσουμε τι είναι το LLVM, και πώς μπορούμε με τη χρήση αυτού να έχουμε έναν ολοκληρωμένο μεταγλωττιστή σε πολύ λίγο χρόνο.

Update:
More Info: Wiki Page
Filed under: Events, FOSS No Comments
1Apr/134

Internet of Things: Making the World Go Around Us

Πόσες φορές μπορεί να έχει τύχει να ακούσουμε τη φράση "Ξύπνα, ο κόσμος δε γυρίζει γύρω από εσένα"! Ε ναι λοιπόν, ήρθε όντως ο καιρός να ξυπνήσουμε, αλλά για να τρελάνουμε εκείνους που μας την έσπαγαν όλο αυτό το διάστημα, κάνοντας πραγματικότητα αυτό για το οποίο μας κατηγορούσαν. Θα φτιάξουμε ένα περιβάλλον όπου όλα γύρω μας θα δουλεύουν για εμάς.

Θα ξεκινήσουμε την πρσπάθεια αυτή με μία μικρή παρουσίαση στο P-Space, ώστε να επισημάνουμε τι είναι αυτό που θέλουμε να επιδιώξουμε, να δούμε ποια είναι τα εργαλεία που έχουμε στη διάθεσή μας, τι βρίσκεται στα πλαίσια του εφικτού και τι όχι.

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

Αυτό που θα γίνει στο επόμενο κομμάτι της παρουσίασης είναι να εξετάσουμε πρακτικά ζητήματα υλοποίησης που προκύπτουν, και να στήσουμε ένα δοκιμαστικό δίκτυο.

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

Εν τω μεταξύ, αν έχετε την περιέργεια να δείτε μερικά πραγματά πάνω στο θέμα, παρακάτω σας δίνω ορισμένα keywords τα οποία μπορείτε να ψάξετε:

Arduino Ethernet, Netduino Plus 2, Xbee, RFID readers & tags, Internet Layering & Protocols, REST & RESTful web services, cosm, sockets, http requests.

Εισαγωγή παρουσίασης:

 

Update: Έχω παραγγείλει κάποια επιπλέον εξαρτήματα (GSM και WiFi shields :D ), τα οποία θα βοηθήσουν να στήσουμε το δίκτυό μας και τα οποία περιμένω να παραλάβω. Έτσι λοιπόν, εκτός απροόπτου, η παρουσίαση θα γίνει μέσα στο σαββατοκύριακο, 20-21/4.
 

Η παρουσίαση θα πραγματοποιηθεί την Τρίτη 23/4 στις 20:00.

Update2:
Η ΠΑΡΟΥΣΙΑΣΗ ΑΝΑΒΑΛΛΕΤΑΙ ΓΙΑ ΤΗΝ ΠΕΜΠΤΗ 25/04 ΚΑΙ ΩΡΑ 20:00
Πρόγραμμα παρουσίασης:
1. Ανάλυση της δομής του Internet
2. Μελέτη των δυνατοτήτων και περιορισμών της οικογένειας των μικροελεγκτών Arduino
3. Γνωριμία με την δικτυακή υπηρεσία cosm
4. Επίδειξη ενδεικτικών εφαρμογών

Final Update:
More Info: Wiki Page
Video παρουσίασης...
26Mar/130

International Tabletop Day

Η Διεθνής Ημέρα Επιτραπέζιων Παιχνιδιών είναι μία υπενθύμιση για την αφιέρωση περισσότερου χρόνου, και την ενδυνάμωση των δεσμών με τους ανθρώπους που εκτιμάμε περισσότερο, τους φίλους και την οικογένειά μας, παίζοντας παιχνίδια μαζί. Τα επιτραπέζια παιχνίδια προωθούν πολλά θετικά κοινωνικά και γνωστικά προνόμια, όπως αυξημένη επικοινωνία, ομαδική προσπάθεια, σχεδιασμό και είναι μια εξαιρετική δραστηριότητα αποβολής άγχους, για ανθρώπους κάθε ηλικίας.

Ελάτε στο P-Space το Σάββατο 30/3 από τις 17:00 και μετά, για να γνωριστούμε, να παίξουμε, και να διασκεδάσουμε.

Μπορείτε να φέρετε και τα δικά σας παιχνίδια. Σας περιμένουμε...

Filed under: Events, P-Space No Comments
14Mar/130

Παρουσίαση Paparazzi Autopilot για UAV και OpenPilot για Quadcopter

penguin_logo

Μπορεί να έχετε παρατηρήσει ένα τετρακόπτερο και δύο αεροπλανάκια στο P-Space.
Ελάτε να μάθουμε τι είναι και τα Open Source Projects με τα οποία λειτουργούν!

Τα αεροπλανάκια χρησιμοποιούν τον Paparazzi Autopilot. Έναν αυτόματο πιλότο με πολλές δυνατότητες ο οποίος έχει συνεχή ανάπτυξη.
Θα γίνει μία προσομοίωση πτήσης για να δούμε τι μπορούμε να κάνουμε με ένα τέτοιο σύστημα.

Όσο για το τετρακόπτερο, χρησιμοποιεί τον OpenPilot και θα γίνει μία μικρή πτήση (αιώρηση) στο τέλος!

Την Τετάρτη 27/3 και ώρα 20:00 πετάμε!

Update: Video παρουσίασης...
Filed under: Events, FOSS, P-Space No Comments
14Mar/130

Contribute to Open Source Communities: Drupal

Το Drupal είναι μία open source content management πλατφόρμα που ήδη στηρίζει εκατομμύρια ιστοσελίδων και εφαρμογών. Είναι χτισμένο, χρησιμοποιείται, και υποστηρίζεται από μία ενεργή και  πολυπολιτισμική κοινότητα ανθρώπων ανά τον κόσμο.

Αφήνοντας ένα πιθανό workshop για κάποια επόμενη συνάντηση, αυτή τη φορά δεν θα μιλήσουμε για το πως να στήσουμε κάτι σε Drupal, αλλά για το πως μπορεί κάποιος/α να συμβάλει στην κοινότητα με issues, translations, ελληνική ανταπόκριση, κτλ.

Όλοι, την Τετάρτη 20/3 στις 20:00, στο P-Space.

Update: Διαφάνειες & Video παρουσίασης...
Filed under: Events, FOSS, P-Space No Comments