Categories
Chest

Podcast που αξίζει να ακούσεις: Recode Decode

Το πρώτο podcast που προστέθηκε στη λίστα μου το 2018 ήταν το Recode Decode. Πρόκειται για ένα τεχνολογικό podcast του οποίου όμως η θεματολογία “μπλέκεται” με ζητήματα κοινωνικά, πολιτικά, πολιτισμικά, κ.ο.κ. Το επιμελείται η κα. Kara Swisher, μία δημοσιογράφος με τέχνη, κατά τη γνώμη μου, στις συνεντεύξεις.

Το παρακάτω επεισόδιο τιτλοφορείται “How to fix the problems caused by tech” και καλεσμένος είναι ο Andrew Keen συγγραφέας του βιβλίου ‘How to Fix the Future‘. Στο podcast, όπως και στο βιβλίο ο Keen αναλύει 4 κατηγορίες πραγμάτων που κατά τη νγώμη του χρειάζεται να “διορθωθούν” στην ψηφιακή εποχή: Την οικονομική ανισότητα, την “επικείμενη κρίση” στην εργασία, την εμφάνιση και άνοδο του surveillance capitalism (του φαινομένου δηλαδή ότι ο χρήστης online συνεννεί να παρακολουθείται, με αντάλλαγμα τη δωρεάν πρόσβαση σε κάποια υπηρεσία) και τέλος, μια πολιτισμική κρίση, τάση προς διχασμό και “fake news”.

(Photo by Kevin on Unsplash)

Categories
Chest

Είσαι ή developer ή designer ή sysadmin. Και δεν μπορείς να κάνεις τίποτε για αυτό.

Αν ασχολείσαι με την δημιουργία “πραγμάτων” στο Internet στις μέρες μας, μπορεί να σε προβληματίζει το πως πρέπει να αυτοπροσδιορίζεσαι επαγγελματικά. Λέω αυτοπροσδιορίζεσαι γιατί η ωμή αλήθεια (παρόλο που δεν θέλουμε να το παραδεχτούμε) είναι ότι η πλειοψηφία των ανθρώπων εκεί έξω δεν ενδιαφέρονται για τον τίτλο σου. Αλλά και η μειοψηφία εκείνη που μπορεί να ενδιαφέρεται να προσλάβει έναν “senior super saiyajin full stack all inclusive keep the change php ninja” μπορεί εύκολα να πειστεί από το καλοστημένο portfolio του απλού, κοινού θνητού, web developer.

Ας κάνουμε τώρα μια υπόθεση εργασίας. Ασχολείσαι με την κατασκευή ιστοσελίδων (οποιοδήποτε κομμάτι της, development, design, …). Είσαι καλεσμένος σε έναν γάμο. Γνωρίζεις έναν τύπο στο τραπέζι σου ο οποίος σου λέει (πριν μάθει με τι ασχολείσαι) ότι προσπαθεί να βρει κάποιον να του φτιάξει το ηλεκτρονικό μαγαζί του για να πουλάει πράγματα στα ιντερνετς, πως τα λέτε αυτά εσείς οι νέοι, και διαθέτει μέχρι και 25.000 ευρώ γιατί ξέρει ότι είναι το μέλλον. Τώρα σκέψου τι πρόκειται να απαντήσεις στην ερώτηση “με τι ασχολείσαι;”.

ΣΗΜΕΙΩΣΗ: Για λόγους απλούστευσης σε αυτό το άρθρο με τον όρο ιστοσελίδα αναφερόμαστε σε όλες τις web εφαρμογές (websites, e-shops, portals, web services, κ.ο.κ.).

Εν αρχή είν’ η αρχιτεκτονική

Κάθε ιστοσελίδα έχει μια δομή. Στην επιστήμη της Πληροφορικής η δομή αυτή εξαρτάται από την αρχιτεκτονική που θα επιλέξει ο κατασκευαστής ή η ομάδα κατασκευής της ιστοσελίδας.

Για τον κόσμο του Web η πιο συνηθισμένη αρχιτεκτονική είναι η αρχιτεκτονική πολλαπλών επιπέδων (multi-tier architecture) και πιο συγκεκριμένα η three-tier arhictecture της οποίας η λογική απεικονίζεται στην εικόνα στα δεξιά. Η αρχιτεκτονική αυτή ορίζει 3 επίπεδα τα οποία με απλά λόγια είναι τα εξής (για καλύτερη κατανόηση διαβάστε από κάτω προς τα πάνω, όπως στο σχήμα):

Image credit: Wikipedia
  • Επίπεδο Παρουσίασης (Presentation Tier): Εδώ ζει (που θα έλεγε και ο Bob Ross) το user interface (UI) ή ελληνιστί η διεπαφή χρήστη. Στην ουσία αυτό το επίπεδο είναι το σημείο επαφής του χρήστη / επισκέπτη της ιστοσελίδας, με την πληροφορία (δηλαδή τα δεδομένα της ιστοσελίδας), μεταφράζει δηλαδή, όπως σωστά αναφέρει το παραπάνω σχήμα, τις διαδικασίες της ιστοσελίδας σε κάτι που να μπορεί να καταλάβει ο χρήστης.
  • Επίπεδο Λογικής (Logic Tier ή Business Logic Tier): Πρόκειται για το κέντρο αποφάσεων της ιστοσελίδας. Εδώ, βάσει των επιλογών των χρηστών της ιστοσελίδας, ανασύρονται τα κατάλληλα δεδομένα από το επίπεδο δεδομένων για να προωθηθούν στο επίπεδο παρουσίασης (βλ. παραπάνω).
  • Επίπεδο Δεδομένων (Data tier): Η αποθήκη δεδομένων (κείμενα, εικόνες, αρχεία, βάση δεδομένων). Όλη η πληροφορία της ιστοσελίδας βρίσκεται εδώ!

ΣΗΜΕΙΩΣΗ: Η παραπάνω αρχιτεκτονική είναι αρκετά αφηρημένη. Τα τελευταία χρόνια έχουν αναπτυχθεί διάφορες παραλλαγές της όπως η Model View Controller (MVC), η Model View Viewmodel (MVVP) και η The Four‑Tier Engagement Platform που κατά βάση επεκτείνει την three-tier architecture λαμβάνοντας υπόψη σαν 4ο επίπεδο τις διαφορετικές mobile συσκευές που πρέπει να εξυπηρετηθούν.

Τίνος είσ’ εσύ;

Βάση των παραπάνω οι βασικές κατηγορίες των επαγγελματιών διαδικτύου συνεχίζουν να είναι οι εξής τρεις (στο D&D θα τις λέγαμε classes):

  • Developer: γράφει κώδικα, σκέφτεται (υπερ-)αναλυτικά, είναι problem solver και θα επιλέγει πάντοτε την πιο αποδοτική λύση για την μηχανή. Θέματα UI/UX τον αφήνουν παντελώς αδιάφορο γιατί ο ίδιος αντιλαμβάνεται εύκολα πως δουλεύει μια μηχανή ή μία εφαρμογή και δεν καταλαβαίνει γιατί δεν είναι ξεκάθαρο για τους άλλους.
  • Designer: είναι artist, πράγμα το οποίο αναπόφευκτα φέρνει υποκειμενικότητα στα παραδοτέα του. Όπως με οποιαδήποτε μορφή τέχνης, κάθε δουλειά “χτυπάει” διαφορετικά στα διάφορα μάτια. Επειδή η βασική του επιδίωξη είναι ο χρήστης μιας εφαρμογής να καταλαβαίνει τι προσφέρει η εφαρμογή και να του είναι όσο το δυνατόν πιο ξεκάθαρο πως λειτουργεί, επικεντρώνεται στο κομμάτι αυτό πολλές φορές αδιαφορώντας για τις συνέπειες σε επίπεδο απόδοσης γιατί θεωρεί πως εφόσον ο χρήστης είναι ικανοποιημένος, η πλατφόρμα είναι επιτυχημένη και όλα τα άλλα θα βρεθούν.
  • SysAdmin / Webmaster:  συνήθως λειτουργούν σειριακά με συνταγές καλών πρακτικών και απώτερο στόχο την καλή λειτουργία και την ασφάλεια των υποδομών (δίκτυο, storage, ασφάλεια, κ.ο.κ.). Έχουν βαθιά γνώση σε επίπεδο δικτύου / hardware και των online εργαλείων που αφορούν την διαχείριση των servers σε επίπεδο φιλοξενίας των ιστοσελίδων και διαχείρισης χρηστών. Βλέπουν την εφαρμογή μακροσκοπικά, ως ένα σύνολο αρχείων που ξοδεύει τους πόρους ενός συστήματος για να κάνει μια δουλειά.

Μέχρι τα 2005 περίπου οι περισσότεροι επαγγελματίες καλούνταν να διαλέξουν μία από τις παραπάνω κατηγορίες για να ακολουθήσουν ως επάγγελμα. Οι περισσότεροι ωστόσο από αυτούς (είτε ως φοιτητές, είτε ως χομπίστες) είχαν εκπαιδευτεί σε μια σειρά πραγμάτων που άγγιζαν περισσότερες (και πολλές φορές όλες) τις παραπάνω κατηγορίες. Αυτό σε συνδυασμό με την συνήθη πρακτική εταιριών να ζητούν “ανθρώπους για όλες τις δουλειές” οδήγησε στη δημιουργία επαγγελματιών που ήταν λίγο από αυτό και λίγο από το άλλο (στο D&D θα τους λέγαμε cross-class characters).

Καθώς οι τεχνολογίες του διαδικτύου εξελίσσονταν τα κλασσικά κανάλια UI (desktops / laptops) διευρύνθηκαν με νέους τύπους συσκευών (mobiles, tablets, smart tvs, smart watches, κ.ο.κ.) επεκτείνοντας τις ανάγκες στο Presentation Layer. Ομοίως, οι τεχνολογίες που αφορούσαν τους servers και τις βάσεις δεδομένων εξελίχθηκαν επίσης, επεκτείνοντας τις ανάγκες στο Data Layer. Ο συνδυασμός των δύο αυτών φαινομένων έφερε μοιραία αλλαγές και στο επίπεδο Business Logic.

Οπότε;

Η ζωή συνεχίζεται 🙂 Ο κάθε επαγγελματίας καλείται να διαλέξει το βασικό τομέα (domain) στον οποίο θα ειδικευτεί (στο D&D θα έμοιαζε με τα Schools of Magic των Wizards) προσπαθώντας (κατά την προσωπική μου άποψη) να μένει όσο το δυνατόν ενημερωμένος με τις βασικές εξελίξεις των τομέων – γειτόνων ώστε να μπορεί να καταλαβαίνει τους επαγγελματίες με τους οποίους θα κληθεί να συνεργαστεί στο πλαίσιο μιας ομάδας.

Επειδή το Ελευθέρο Λογισμικό / Λογισμικό Ανοικτού Κώδικα έφερε πληθώρα έτοιμου κώδικα και εργαλείων που μπορούν να επιταχύνουν κατά πολύ την ανάπτυξη λογισμικού, οι ανάγκες ενός έργου πληροφορικής πολλαπλασιάζονται αφού στον ίδιο χρόνο, μπορούν να γίνουν πολύ περισσότερα πράγματα. Το πιθανότερο είναι πως, αν εργαστείτε σε ένα σοβαρό έργο πληροφορικής, θα κληθείτε να δουλέψετε σε μια ομάδα που θα περιλαμβάνει κάποιου είδους designer, κάποιου είδους developer και κάποιου είδους webmaster 😉

Categories
Chest

Tim Harford on the Importance of Being Messy

An excellent podcast episode about how difficulties, obstacles and courageous decisions can shape a persons character and how being messy can sometimes help 🙂

Categories
Chest

Plato’s cave

It is the task of the enlightened not only to ascend to learning and to see the good but to be willing to descend again to those prisoners and to share their troubles and their honors, whether they are worth having or not. And this they must do, even with the prospect of death.

Categories
Chest

It’s not about Open Source

Three days ago we celebrated 25 years from the birth of Linux. I have been an Open Source user for over a decate now and I consider myself lucky to be part of this awesome network.

Open Source gave me free access to applications that, have they been proprietary, I would need to pay good money or illegally obtain them. Open Source fueled my research when I was an undergrad computer science student and, later on, during my MSc and currently during my PhD endeavor. As a researcher it gave me the opportunity to be part of EU funded research projects and get paid to study what I love. As a freelancer it gave me the means to rapidly develop software and therefore deliver competitive, high quality and tested software to my clients. It also allowed me to do consulting work for a couple of amazing software development companies and startups.

Anyways, it was not until recently that I realized that it’s not about Open Source! I was invited as a guest speaker to an event of the Arcitecture Dept., Aristotle University of Thessaloniki. My mission was to present a short history of the free software movement / open source initiative and then present applications of open source to the arts / creative professions. I have never touched a similar area before so I tried to think as a creative professional (NOT easy, if you are a tech person!) and imagine how open source, open licenses and so forth could benefit my world.

After my experiment was over the following came in mind: Open Source helped the world get familiar with the concept of sharing the raw materials of a creation, plus know-how (if needed), allowing the community to take it to the next level. Initially, those creations were open source software and their raw materials the source code but, nowadays, we have moved past that. Books, music, video productions, hardware even games are being published under open licenses.

Supporting openness is a choice anyone can make. Following the philosophy of openness however is a whole different discussion. One that I will leave for another post 🙂

Happy birthday Linux! Happy birthday Open Source!

Categories
Chest

Open Talent Era

Welcome to the open talent economy—a collaborative, transparent, technology-enabled, rapid-cycle way of doing business. What the open source model did for software, the open talent economy is doing for work.

From Deloitte, The Open Talent Economy. People and work in a borderless workplace.

Categories
Chest

3 life lessons software metrics can teach us (and make good resolutions)

Happy new year everybody! In case you are looking for a couple of good resolutions to add to your 2016 list, here’s a bunch of geeky ones coming from software engineering research field 🙂

1. Keep your diff low

Diff (short for difficulty) is one of the Halstead complexity measures. It is used to measure the difficulty of the source code of a specific software system.

Moral: try to measure your difficulty level and keep it as low as possible. If you meet a difficult person, try to engage and understand how s/he thinks. It will help you identify you own difficulty level.

2. Keep your effort low

Effort is another Halstead complexity measure. As you probably already guessed it measures the effort one needs to understand the source code of a specific software system.

Moral: do you open up to people? Do you make it easy for them to understand how you think, where you come from? There is a fine line between mystery and perplexity. Make sure you balance them right.

3. Keep your LCOM low

LCOM (abrr. for Lack of cohesion of methods) is a Chidamber  & Kemerer metric measuring the cohesion of a class. High levels of the LCOM increases complexity. Also, classes with low cohesion could probably be subdivided into two or more subclasses with increased cohesion.

Moral: the more things you engage with, the less cohesive you are. Try to focus on the things that really matter.

Categories
Chest

Matt Mullenweg talks about coding in open source, business and productivity

(via: fourhourworkweek.com)

Categories
Chest

Everything you need to know about WordPress 4.0, the Benny Goodman edition

Just updated to WordPress 4.0 and everything went smooth. I love the video mashup with the latest changes. It’s probably the best way to communicate the most important features to a WordPress fan 🙂

As you probably know, WordPress versions get their names from famous Jazz musicians and 4.0 is dedicated to one of my personal favorites, Benny Goodman. If you are like me and enjoy listening to swing music, I totally recommend the following duet of Benny Goodman and Peggy Lee.

Categories
Chest

The Zero Theorem: top 3 favorite quotes

Bronze Metal

– Nothing adds up.

– No. You’ve got it backwards, Qohen. Everything adds up to nothing, that’s the point.

– What’s the point?

– Exactly. What’s the point of anything?

 

Silver Metal

I’m sorry to interrupt, but I couldn’t help but notice this young lady’s pathological attempt to project upon you her daddy issues of abandonment…

 

Platinum Metal* 

It’s better than real. You’re in your computer and I’m in mine. We’re connected by memory chips and fiber optics. We’re safe here.

 

* was so good that we had to
skip gold position 😛