Sunday, March 18, 2007

Delphi for PHP

Επιτέλους, μετά από χρόνια οπισθοδρόμησης, ένα εργαλείο προγραμματισμού για το web, που επιτρέπει στον προγραμματιστή να ασχοληθεί με την ουσία και όχι με το UI. H Borland (ή μάλλον καλύτερα η CodeGear) κυκλοφορεί στο τέλος του Μάρτη το Delphi for PHP.

Thursday, March 15, 2007

Περισσότερα προβλήματα στρογγυλοποίησης

Μικρή, πρόχειρη σημείωση, μετά από ένα κουραστικό πρωινό γεμάτο αναφορές προβλημάτων για διαφορές ενός εκατοστού του Ευρώ ή ενός χιλιοστού του κυβικού μέτρου μεταξύ διαφορετικών εντύπων:

1. Πάντα να χρησιμοποιείς μια ρουτίνα στρογγυλοποίησης που να είσαι απόλυτα ξεκάθαρος για το πως λειτουργεί.
2. Να την χρησιμοποιείς για να στρογγυλοποιείς όλα, ανεξαιρέτως, τα ενδιάμεσα αποτελέσματα των υπολογισμών.

Saturday, February 10, 2007

color schemes in virtual machines

Για να καταφέρω να φτιάξω μία Unattended εγκατάσταση του Delphi7 που να συμπεριλαμβάνει όλα τα συμπληρωματικά εργαλεία και components που συνήθως χρησιμοποιούμε στη δουλειά, έστησα δύο virtual machines με XP στο VMWare, μία στην οποία εγκατέστησα το Delphi7 και τα παρελκόμενα του, και στην άλλη δοκίμαζα την εγκατάσταση καθώς εξελίσσονταν. Ανακάλυψα πόσο χρήσιμο και εύκολο είναι να έχεις διαφορετικό windows color scheme σε κάθε virtual machine για εύκολη οπτική αναγνώριση του ποιο είναι ποιο.

Chester, the imaginary tester

Πως όταν είσαι τρία έχεις τον φανταστικό σου φίλο και του μιλάς όταν είστε μόνοι; Στη δουλειά έχουμε τον Chester, τον φανταστικό Tester. Γιατί κάποιος πρέπει να επωμισθεί το δύσκολο έργο του να δοκιμάσει τις νέες και παλιές λειτουργίες των προγραμμάτων που φτιάχνουμε.

μια πάρα πολύ χρήσιμη συνήθεια

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

Sunday, February 04, 2007

Στρογγυλοποίηση

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

Πχ πέντε άνθρωποι έχουν τους παρακάτω μηνιαίους μικτούς μισθούς και 13,5% κρατήσεις κάθε μήνα. Για να υπολογίσεις την κράτηση, πολλαπλασιάζεις με 0.135 και στρογγυλοποιείς στα δύο δεκαδικά (γιατί έτσι ορίζει ο νόμος, οι αξίες σε Ευρώ έχουν πάντα 2 δεκαδικά). Προκύπτουν οι κρατήσεις που φαίνονται στον παρακάτω πίνακα. Αν αθροίσεις τους μισθούς και προσπαθήσεις να βρεις τις κρατήσεις πολλαπλασιάζοντας το σύνολο με 13.5%, θα ανακαλύψεις ότι διαφέρουν κατά ένα λεπτό του Ευρώ (0.01€). Το 13.5% του 6060.00€ είναι 818,10€, ενώ το άθροισμα των στρογγυλοποιημένων επιμέρους κρατήσεων είναι 818,11€

Μισθός - Κρατήσεις
1.210,00€ - 163,35€
1.211,00€ - 163,49€
1.212,00€ - 163,62€
1.213,00€ - 163,76€
1.214,00€ - 163,89€

Σύνολα Μισθών - Κρατήσεων:
6.060,00€ - 818,11€

Thursday, December 07, 2006

TLAs

Κατά λάθος, ο ανταγωνισμός μας κάλεσε να δούμε το προϊόν του το Σάββατο το πρωί στο Hyatt, και μπαίνοντας στο site του, βρήκα πληθώρα από εντυπωσιακά TLAs (Three Letter Acronyms, τριγράμματα ακρωνύμια, η πληροφορική είναι γεμάτη με τέτοια, μάλιστα θα μπορούσα να πω όλη η Αμερική είναι γεμάτη με τέτοια)

Τα μοδάτα ΤΓΑ του Σαββάτου, είναι:

ERP, Enterprise Resource Planning
CRM, Customer Relation Management
SOA, Service Oriented Architecture
MIS, Management Information System
OLAP, (που είναι τέσσερα γράμματα), On Line Analytical Processing

Saturday, December 02, 2006

Open-Source Delphi Libraries

Για όλους τους Delphi Developers εκεί έξω: Οι open-source Delphi βιβλιοθήκες με τα περισσότερα downloads (από το SourceForge):

1. JEDI VCL for Delphi (vcl components)
2. ZeosLib (database connectivity)
3. Free Pascal Compiler (αυτό που λέει)
4. TurboPower Async Professional
(βιβλιοθήκες επικοινωνίας με την σειριακή θύρα)
5. Jedi Code Library (γενικής χρήσης βιβλιοθήκες)
6. GLScene (βιβλιοθήκες για OpenGL)
7. GExperts (plugins παραγωγικότητας για το IDE)
8. SynEdit (πλήρες editor component με color coding)

Εκτός του GlScene (που είναι για OpenGL Graphics) και που δεν το έχω χρησιμοποιήσει, για τις λοιπές βάζω το χέρι μου στη φωτιά (που δεν χρειάζεται, το γεγονός ότι κατέχουν το top 10 μιλάει από μόνο του)

Tuesday, November 28, 2006

LogMeIn.com

Κάποια στιγμή, κάποιος συνάδερφος, μας πρότεινε για τις remote access ανάγκες μας το LogMeIn.com. Μικρό προγραμματάκι, που εγκαθιστάς σε ένα υπολογιστή και μπορείς να συνδεθείς σε αυτόν τον υπολογιστή μέσω ενός browser (IE ή Firefox) από οποιοδήποτε σημείο στο internet. Επί πληρωμή για τις πλήρεις υπηρεσίες του, αλλά δωρεάν αν το μόνο που επιθυμείς είναι να βλέπεις ένα desktop.

Πάρα – πάρα πολύ βολικό αν θέλεις να βοηθήσεις κάποιον φίλο να ξεμπλέξει τον υπολογιστή του. Του ζητάς να το εγκαταστήσει (περνάει από τα περισσότερα firewalls και routers, κατά κανόνα, αν ο υπολογιστής βλέπει σελίδες, θα λειτουργήσει και το LogMeIn) και μετά μπορείς να συνδεθείς στον υπολογιστή του φίλου σου από την άπλα του σπιτιού σου και να του ρυθμίσεις το eMule…

metadata

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

Ο ορισμός λέει ότι metadata είναι data για τα data (εντάξει, είναι ηλίθιο, το ξέρω).
Το βασικό μας πρόγραμμα χρειάζεται μια βάση δεδομένων με τριακόσιους και κάτι πίνακες για να λειτουργήσει, και αυτοί οι πίνακες έχουν ονόματα στα Αγγλικά (ακόμη χειρότερα, έχουν ονόματα με λατινικούς χαρακτήρες, που δεν αντιστοιχούν πάντα σε αγγλικές λέξεις).

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

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

some assembly required

Αν και θα προσπαθήσω να είμαι απλός στον τρόπο που τα γράφω, αυτό το blog θα είναι δυσνόητο για τον μη-σχετικό με την πληροφορική. You have been warned.

μικρό, σχεδόν οικογενειακό software house

Εφεξής, το μικρό, σχεδόν οικογενειακό software house στο οποίο δουλεύω, θα το ονομάζω "η δουλειά". Οπότε, όταν γράφω "Σήμερα στη δουλειά φτιάξαμε αυτό", μπορείτε να το μεταφράζετε σαν "Σήμερα, στο μικρό, σχεδόν οικογενειακό software house στο οποίο δουλεύω, φτιάξαμε αυτό"

Ο Λόγος

Γιατί, έτσι κι αλλιώς, στην Αγγλική, υπάρχει εκεί έξω αμέτρητη πληροφορία για την πληροφορική. Στην Ελληνική όμως, όχι. Οπότε, ας επεκτείνω λίγο τη διαθέσιμη πληροφορία που υπάρχει στα Ελληνικά εκεί έξω (που είναι και ένας από τους λόγους που διατηρώ blogs)

Γύρισμα

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