Προς το περιεχόμενο

SIMkartaUK

Members
  • ΜΗΝΥΜΑΤΑ FORUM

    64
  • ΜΕΛΟΣ

  • ΤΕΛ. ΕΠΙΣΚΕΨΗ

Πληροφορίες προφίλ

  • Φύλο
    Άνδρας

Πρόσφατες Επισκέψεις

415 προβολές προφίλ

SIMkartaUK's Achievements

  1. SIMkartaUK

    Popularity function

    Έχει καμιά σχέση με τον αλγόριθμο PageRank της Google που βγάζει τα αποτελέσματα με βάση τη δημοφιλία τους?
  2. Υπάρχουν ελληνικές εταιρίες που ζούν αποκλειστικά από εξαγωγές σε πλούσιες χώρες και έχουν και παραρτήματα εκεί και οι περισσότεροι δέν τις έχουν ακούσει κάν.. νομίζουν ότι είναι ψιλικατζίδικα.. από την άλλη ξέρω γνωστές εταιρίες ΙΤ στο Μαρούσι που έχουν φέρει προγραμματιστές από Αλβανία, Βουλγαρία, Μολδαβία κτλ. Ποιός την ..μπιπ.. την Ελλάδα? ελεύθερη αγορά έχουμε.. ανάλογα τί τον συμφέρει τον καθένα.. Δηλαδή άμα σε στείλει η εταιρία από Ελλάδα να στήσεις ένα πρότζεκτ στο Κατάρ μέσα σε μιά ομάδα για 6 μήνες έχει διαφορά από το να είσαι μόνιμα έξω 1 χρόνο? Το development μπορεί να γίνει οπουδήποτε.. και μετά το αφεντικό σου που επενδύει επάνω σου θα σου δώσει τα λεφτά για το έργο που παράγεις.. δεν είναι τρελός να σε χάσει αμα είσαι καλός στη δουλειά σου.. Δέν κάνω καμιά κολοτούμπα.. Think different.. να πάω στην Αγγλία να μήν μου μένει φράγκο μονο και μόνο για να λέω ότι δουλεύω στην Χ μεγάλη εταιρία και ότι είμαι Αγγλία?? ..τσου.. Αμα πάω εξωτερικό μονιμα θα είναι μετά από χρόνια και για πολύ καλά λεφτά.. γιατί γνωρίζω από άτομα που δουλεύουν στο εξωτερικό σε πρότζεκτ εκατομμυρίων και τους στέλνουν και οι γονείς τους βοήθημα για να βγάλουν το μήνα!.. καλύτερα πρώτος στο χωριό παρά δεύτερος στην πόλη.. Δέν ξέρω πόσο χρόνο θα μου πάρει να γίνω full-stack developer και άν έχω ταλέντο.. ξέρω ότι έχω πολύ καλό motivation και ηλικία που δέν επιτρέπει άλλες αλλαγές καριέρας.. και επειδή το ΙΤ είναι πολύ ανταγωνιστικός και μεταβαλλόμενος τομέας θα αφιερωθώ εντελώς στο αντικείμενο.. Ο καλός δέν χάνεται ποτές. Δηλαδή εσείς που τα μάθατε είστε πιό έξυπνοι ή πιό όμορφοι από μένα? δεν νομίζω..
  3. //tree.cpp //demonstrates binary tree #include <iostream> #include <stack> using namespace std; //////////////////////////////////////////////////////////////// class Node { public: int iData; //data item (key) double dData; //data item Node* pLeftChild; //this node’s left child Node* pRightChild; //this node’s right child //------------------------------------------------------------- //constructor Node() : iData(0), dData(0.0), pLeftChild(NULL), pRightChild(NULL) { } //------------------------------------------------------------- ~Node() //destructor { cout << "X-" << iData << " "; } //------------------------------------------------------------- void displayNode() //display ourself: {75, 7.5} { cout << '{' << iData << ", " << dData << "} "; } }; //end class Node //////////////////////////////////////////////////////////////// class Tree { private: Node* pRoot; //first node of tree public: //------------------------------------------------------------- Tree() : pRoot(NULL) //constructor { } //------------------------------------------------------------- Node* find(int key) //find node with given key { //(assumes non-empty tree) Node* pCurrent = pRoot; //start at root while(pCurrent->iData != key) //while no match, { if(key < pCurrent->iData) //go left? pCurrent = pCurrent->pLeftChild; else //or go right? pCurrent = pCurrent->pRightChild; if(pCurrent == NULL) //if no child, return NULL; //didn’t find it } return pCurrent; //found it } //end find() //------------------------------------------------------------- void insert(int id, double dd) //insert new node { Node* pNewNode = new Node; //make new node pNewNode->iData = id; //insert data pNewNode->dData = dd; if(pRoot==NULL) //no node in root pRoot = pNewNode; else //root occupied { Node* pCurrent = pRoot; //start at root Node* pParent; while(true) //(exits internally) { pParent = pCurrent; if(id < pCurrent->iData) //go left? { pCurrent = pCurrent->pLeftChild; if(pCurrent == NULL) //if end of the line, { //insert on left pParent->pLeftChild = pNewNode; return; } } //end if go left else //or go right? { pCurrent = pCurrent->pRightChild; if(pCurrent == NULL) //if end of the line { //insert on right pParent->pRightChild = pNewNode; return; } } //end else go right } //end while } //end else not root } //end insert() //------------------------------------------------------------- void traverse(int traverseType) { switch(traverseType) { case 1: cout << "\nPreorder traversal: "; preOrder(pRoot); break; case 2: cout << "\nInorder traversal: "; inOrder(pRoot); break; case 3: cout << "\nPostorder traversal: "; postOrder(pRoot); break; } cout << endl; } //------------------------------------------------------------- void preOrder(Node* pLocalRoot) { if(pLocalRoot != NULL) { cout << pLocalRoot->iData << " "; //display node preOrder(pLocalRoot->pLeftChild); //left child preOrder(pLocalRoot->pRightChild); //right child } } //------------------------------------------------------------- void inOrder(Node* pLocalRoot) { if(pLocalRoot != NULL) { inOrder(pLocalRoot->pLeftChild); //left child cout << pLocalRoot->iData << " "; //display node inOrder(pLocalRoot->pRightChild); //right child } } //------------------------------------------------------------- void postOrder(Node* pLocalRoot) { if(pLocalRoot != NULL) { postOrder(pLocalRoot->pLeftChild); //left child postOrder(pLocalRoot->pRightChild); //right child cout << pLocalRoot->iData << " "; //display node } } //------------------------------------------------------------- void displayTree() { stack<Node*> globalStack; globalStack.push(pRoot); int nBlanks = 32; bool isRowEmpty = false; cout << "......................................................"; cout << endl; while(isRowEmpty==false) { stack<Node*> localStack; isRowEmpty = true; for(int j=0; j<nBlanks; j++) cout << ' '; while(globalStack.empty()==false) { Node* temp = globalStack.top(); globalStack.pop(); if(temp != NULL) { cout << temp->iData; localStack.push(temp->pLeftChild); localStack.push(temp->pRightChild); if(temp->pLeftChild != NULL || temp->pRightChild != NULL) isRowEmpty = false; } else { cout << "--"; localStack.push(NULL); localStack.push(NULL); } for(int j=0; j<nBlanks*2-2; j++) cout << ' '; } //end while globalStack not empty cout << endl; nBlanks /= 2; while(localStack.empty()==false) { globalStack.push( localStack.top() ); localStack.pop(); } } //end while isRowEmpty is false cout << "......................................................"; cout << endl; } //end displayTree() //------------------------------------------------------------- void destroy() //deletes all nodes { destroyRec(pRoot); } //start at root //------------------------------------------------------------- void destroyRec(Node* pLocalRoot) //delete nodes in { // this subtree if(pLocalRoot != NULL) { //uses postOrder destroyRec(pLocalRoot->pLeftChild); //left subtree destroyRec(pLocalRoot->pRightChild); //right subtree delete pLocalRoot; //delete this node } } //------------------------------------------------------------- }; //end class Tree //////////////////////////////////////////////////////////////// int main() { int value; char choice; Node* found; Tree theTree; //create tree theTree.insert(50, 5.0); //insert nodes theTree.insert(25, 2.5); theTree.insert(75, 7.5); theTree.insert(12, 1.2); theTree.insert(37, 3.7); theTree.insert(43, 4.3); theTree.insert(30, 3.0); theTree.insert(33, 3.3); theTree.insert(87, 8.7); theTree.insert(93, 9.3); theTree.insert(97, 9.7); while(choice != 'q') //interact with user { //until user types ‘q’ cout << "Enter first letter of "; cout << "show, insert, find, traverse or quit: "; cin >> choice; switch(choice) { case 's': //show the tree theTree.displayTree(); break; case 'i': //insert a node cout << "Enter value to insert: "; cin >> value; theTree.insert(value, value + 0.9); break; case 'f': //find a node cout << "Enter value to find: "; cin >> value; found = theTree.find(value); if(found != NULL) { cout << "Found: "; found->displayNode(); cout << endl; } else cout << "Could not find " << value << endl; break; case 't': //traverse the tree cout << "Enter traverse type (1=preorder, " << "2=inorder, 3=postorder): "; cin >> value; theTree.traverse(value); break; case 'q': //quit the program theTree.destroy(); cout << endl; break; default: cout << "Invalid entry\n"; } //end switch } //end while return 0; } //end main() Αυτός είναι ωραίος κώδικας για beginners για να καταλάβουν τα δέντρα.. από το βιβλίο που διάβαζα.. πάρτο κομμάτι κομμάτι και μετά θα μπορείς να πάς σε πιό περίπλοκα πιό εύκολα.. θέμα εξοικίωσης είναι.. άμα έχεις καταλάβει τους pointers μην μασας.. Εγώ βασικά τον έχω μάθει απέξω χωρίς να το θέλω..
  4. Δεσμεύτηκα στους ανθρώπους ότι θα κάθομαι 9+ ώρες στην εταιρία για να ασχολούμαι και να κάνω και ότι δουλειές άλλες χρειαστεί.. γιατί είναι δικό μου πρόβλημα άν εγώ χρειάζομαι 9 ώρες να κάνω μιά δουλειά που ένας άλλος την κάνει σε 7 ή άλλος σε 5.. ούτε κάν ξέρω να πληκτρολογώ γρήγορα ακόμα.. και από την άλλη πρέπει να κερδίσω και την εμπιστοσύνη τους.. και όπως να το κάνουμε τον εργοδότη πρέπει να του δείχνεις συνέχεια ότι προσπαθείς γιατί επενδύει πάνω σου.. δέν θα σκάβω, κώδικα θα γράφω και θα κάνω δουλειές γραφείου.. Από διάβασμα δέν πρόκειται να σταματήσει ποτέ.. εννοείται.. εδώ έσβησα από το ταμπλετ όλα τα τραγούδια για να βάλω ebooks να τα διαβάζω στο δρόμο να μην χάνω άδικα χρόνο.. Τους είπα ότι ξέρω τα βασικά στους αλγόριθμους, βάσεις, λειτουργικά και μεταγλωτιστές και πήγαν να βάλουν τα γέλια οι άνθρωποι.. σε 6 μηνάκια θα με κάνουν αστέρι είπαν αν βάλω τα δυνατά μου.. Νομίζω ότι είναι μέχρι να αποκτήσει κανείς ένα επίπεδο.. μετά τα πράγματα είναι πολύ πιό απλά.. και για εξωτερικό που έλεγα οι περισσότερες εταιρίες ΙΤ στην Ελλαδα έχουν προτζεκτς στο εξωτερικό και στέλνουν κόσμο για 6 μήνες ή λιγότερο.. γιατί άμα περιμένουν να ζήσουν από την ελληνική αγορά..άστο.. δηλαδή άμα πάω στην Αγγλία μόνιμα θα είναι καλύτερα που δέν θα μου μένει και φράγκο.. στο απίθανο σενάριο που θα με πάρει στραβάδι μιά αγγλική εταιρια ΙΤ δηλαδή.. στο εξωτερικό πιστεύω είναι καλά να χωθείς σε καμιά μεγάλη τράπεζα μετά απο πολλά χρόνια εμπειρία..
  5. Λοιπόν.. άμα θέλετε το πιστεύετε άμα θέλετε μήν το πιστεύετε.. εγώ τα λέω για να ενημερωθούν οι ενδιαφερόμενοι που θέλουν να αλλάξουν καριέρα στο ΙΤ μιάς και τα επαγγέλματα που μπορεί να κάνει κάποιος μορφωμένος άνθρωπος στην Ελλάδα είναι μετρημένα στα δάχτυλα πλεον.. Το πρώτο είναι ότι τελείωσα επιτέλους το Sams Algorithms in 24 hours άν και μου πήρε 35 days και γενικά θα προτιμήσω τα βιβλία Sams in 24 hours γιατί είναι ωραία σαν εισαγωγή να έχεις μιά ιδέα πρίν πάς στις σημειώσεις πανεπιστημίων και τα πιό δύσκολα βιβλία.. Το δεύτερο είναι ότι βρήκα δουλίτσα σε software house!!!! συμφωνήσαμε να δουλεύω ένα διάστημα σαν developer με ελεινό μισθό μέχρι να πάρω μιά εμπειρία.. αλλά σε 6 μηνάκια θα με στείλουν για Oracle πιστοποίηση!! Εννοείται ότι έχω πέσει με τα μούτρα στην advanced sql.. Επίσης μου είπαν ότι είναι καλή ιδέα να αρχίσω να μαζεύω τις πιστοποιήσεις για προγραμματισμό σε Java γιατί μετράνε και στην Ελλάδα και στο εξωτερικό και είναι σα να βγάζεις course του Computer Science σε πανεπιστημιο (Προγραμματισμός 1 και 2).. Στο development κομμάτι ειδικά χωρίς αυτες είναι πολύ δύσκολο να σε πάρουν στη πρώτη σου δουλειά στο ΙΤ.. Οι περισσότεροι σαν εμένα έτσι ξεκίνησαν.. Το μόνο πρόβλημα που αντιμετώπισα στη συνέντευξη ήταν να τους πείσω ότι δέν σκοπεύω να τα παρατήσω μετά από κάποιο διάστημα για να ασχοληθώ με άλλο τομέα του ΙΤ ή να φύγω στο εξωτερικό.. μου είπαν οτι έχουν περάσει και άλλοι μηχανικοί από την εταιρία σαν εμένα που μπήκαν σαν τις βρεγμένες γάτες αλλά την έκαναν με ελαφρά πηδηματάκια είτε για μεγαλύτερες εταιρίες είτε για το εξωτερικό.. για αυτό και προτιμάνε "καθαρόαιμους" πληροφορικάριους και όχι μηχανικούς.. για να μήν τους ψάχνουν.. γιατί οι μικροί μας φίλοι πρέπει να ξέρουν ότι μιά εταιρία επενδύει πολύ περισσότερα χρήματα από όσα νομίζουν πάνω σε ένα εργαζόμενο.. δέν είναι μόνο ο μισθός που παίρνει κάθε μήνα χωρίς να ανταποκρίνεται στο έργο που παράγει τους πρώτους μήνες... είναι ο χρόνος που ξοδεύουν οι συνάδελφοί του πάνω του.. είναι το on-the-job training που σίγουρα θα χρειαστει.. είναι πολλά..
  6. Το θέμα είναι που θα βρείς εταιρία να σου πληρώσει την εκπαίδευση και τα εξέτεστρα.. γιατί τα 200+ ευρώ που ζητάει η Oracle για το Associate δέν μου περισσεύουν να τα σκάσω.. θα κατεβάσω το Oracle Documentation να προετοιμάζομαι στα βασικά και βλέπουμε..
  7. εκτός από το Visio υπάρχει κανά καλό software για σχεδιασμό αλγορίθμων? ποιο χρησιμοποιείτε εσείς?
  8. Εχω μπεί στις βάσεις για τα καλά με το βιβλίο Database System Concepts που σας έλεγα άν και είναι το στύλ του DB για Dummies .. τώρα μαθαίνω advanced SQL.. και είναι η γνώμη μου ότι άν είναι να πάς να πάρεις κάποια πιστοποίηση τότε αυτή καλύτερα να είναι στις βάσεις δεδομένων.. ας πούμε ότι βγάζω το Βάσεις Δεδομένων 1 και 2 και είμαι πρίν το τρίτο στάδιο "Προηγμένα θέματα στις Βάσεις Δεδομένων".. μπορώ να κυνηγήσω κάποια πιστοποίηση Associate ή ανώτερη και σε τί βάση (Oracle, MS SQL κτλ)? ή να περιμένω να βγάλω και το τρίτο στάδιο γενικά για τις βάσεις και μετά να κάνω focus σε μιά συγκεκριμένη??? δέν νομίζω να είναι σά τα Cisco που το CCNA το παίρνουν μέχρι και παιδιά της Γ Λυκείου.. γιατί το CCNA + CCNP + Wireless = MSc Computer Networking..
  9. Λοιπόν με το χαρακτήρα που έχω νομίζω ότι μου ταιριάζει να γίνω προγραμματιστής βάσεων δεδομένων... PL/SQL T-SQL και έτσι.. θα βάλω στόχο να μαζέψω τα πιστοποιητικά της Oracle..
  10. SAMS Teach Yourself Data Structures and Algorithms in 24 Hours, Robert Lafore του 1999.. οποιος δεν το βρίσκει του το στέλνω..
  11. SIMkartaUK

    vhdl

    κύριε Dr Fuzzy εγώ δέν είμαι του ΕΜΠ.. δεν είμαι του συστήματος και δεν τα γνωρίζω αυτά που λέτε.. δεν έχω βίσμα.. δεν είμαι της κλίκας.. έχω διαγραφεί από ΤΕΕ.. δεν έχω παρακαλέσει κανέναν να με χώσει σε θεσούλα.. δεν έχω κολήσει αφίσες και δέν έχω φιλίσει λερωμένες ποδιές.. για την Ιντρακόμ έτυχε να γνωρίζω κάποια πράγματα βέβαια.. σχολιασα με βάση την εμπειρία μου από αγγελίες που ζήτησα δουλειά και θυμάμαι τις απαιτήσεις που είχαν για VLSI/FPGA design και Embedded systems στην Ελλάδα.. πχ μιά στο Γέρακα ζητούσε - δεν θέλω να κάνω διαφήμιση.. η Ελλάδα δέν έχει βιομηχανία ψηφιακών ηλεκτρονικών ούτε καμιά Silicon Valley για να κυνηγήσει ο άνθρωπος δουλεια.. εξού και το σχόλιο μου τώρα αυτά που λέτε εσείς για Defence Electronics της Ιντρακόμ τα αφήνω στη κρίση του καθενός.. ας ρίξουν οι ενδιαφερόμενοι μιά ματιά στα μεγάλα projects στο site της Ιντρακόμ.. Πάντως τα τερατουργήματα τεχνικά έργα και τις λαμογιές των μεγάλων εταιριών στην Ελλάδα που την χρεωκόπησαν, τις κάνανε μηχανικοί του ΕΜΠ και των άλλων ελληνικών πανεπιστημίων.. εμείς που σπουδάσαμε στο εξωτερικό μας ζητούσαν να δώσουμε μαθήματα στα "ιδρύματά" αυτά για να ελέγχουν την "ροή" των Ελλήνων μηχανικών στην "αγορά"..
  12. Οι τηλεφωνητριες στη Cosmote με IQ αγελάδας που δουλεύουν 6 ώρες στο χαλαρο παίρνουν 400 Ευρώ.. οι νέοι προγραμματιστές που δουλεύουν 12+ ώρες 500< ??? αδικία μεγάλη.. και ξέρω ότι πολύ κόσμος θέλει να το γυρίσει στο IT αλλά αποθαρρύνεται από αυτά τα τραγικά..
  13. Αυτό θα έλεγα και γώ τώρα.. στα γραφικά έχει πολύ ωραίους αλγόριθμους αλλά δέν προλαβαίνω να ασχοληθώ.. Ξεκίνησα ήδη Βάσεις και έχω πελαγώσει με τον όγκο γνώσεων που πρέπει να πάρω.. και ακόμα πιό ενδιαφέρον έχουν οι αλγόριθμοι στις φωτογραφίες που βρίσκουν το πρόσωπό ανθρώπου.. βασικά μου είπαν να κάτσω να μάθω τα βασικά (σωρούς, γράφους, λίστες, κτλ) και να καταλάβω πώς συνδυάζονται για να δώσουν νέους βελτιωμένους αλγόριθμους.. και να ξανασχοληθώ με πιό προηγμένα πράγματα όταν κλείσω τον "παιδικό" κύκλο μελέτης μου.. ορεξη να χεις
  14. Στο βιβλίο Sams Algorithms in 24 hours που (δυστυχώς) ακόμα διαβάζω έχει ένα ωραίο παράδειγμα anagram στη σελίδα 221 για το recursion.. ρίξε μιά ματιά για εμπνευση..
  15. Η Αγγλία παραμένει η επαγγελματική "Γή της Επαγγελίας" μου αλλά έχω πειστεί ότι πρέπει να εργαστώ πρώτα στην Ελλάδα γιατί πολύ δύσκολα θα με πάρει εταιρία στο εξωτερικό από το μηδέν ειδικά και στην ηλικία που είμαι.. Όσους ρώτησα που δουλεύουν στην Αγγλία προγραμματιστές είχαν γερή προυπηρεσία από Ελλάδα και ειδικότερα σε προτζεκτς με τράπεζες.. Χτές μπήκα στα Red-Black και 2-3-4 δέντρα αλλά δεν πρόλαβα να τα βγάλω γιατί με έπιασε πονοκέφαλος.. και σήμερα το πρωί πήρα ντεπόν για να συνέλθω.. νομίζω ότι το παράκανα με τον καφέ.. θα το γυρίσω στο τσάι.. δέν νομίζω να προλάβω σήμερα και αύριο τα δέντρα και τα Hash Tables αλλά τουλάχιστον είμαι κοντά στο στόχο που έβαλα.. και αυτό είναι πολύ θετικό.. Έχω χάσει πάρα πολλές εργατοώρες στο προγραμματιστικό κομμάτι των αλγορίθμων.. δηλαδή τα διαβάζεις και τα κατανοείς αλλά για να υλοποιήσεις σε κώδικα και να είσαι confident ότι τα ξέρεις πρέπει να τα έχεις δουλέψει πολλές ώρες.. κάποια πράγματα είναι έτοιμα και δέν χρειάζεται κάν να τα σκεφτείς πως να τα κάνεις.. Δέν είναι τυχαίο που το έχουν το μάθημα υποχρεωτικό στη ροή Τεχνολογίας Λογισμικού στο ΕΜΠ.. Είναι κανάς άλλος σημαντικός αλγόριθμος που πρέπει να ξέρω και δέν είναι στους συνηθισμένους του βιβλίου? για να φύγω στις βάσεις άμα είναι τον άλλο μήνα.. στείλε μου σε προσωπικό msg τις startup εταιρίες που ξέρεις και είναι καλές.. γιατί έχω παρατηρήσει ότι στο web design έχει και περισσότερες θέσεις για trainee/jurior developers..
  • Δημιουργία νέου...