Η εκκίνηση υπολογιστή συνοπτικά


Το πλήρες άρθρο βρίσκεται στο lifesteps.gr

  1. Η τροφοδοσία ανάβει. Το τσιπ της μητρικής πλακέτας ετοιμάζεται να μεταβεί σε μια γνωστή τοποθεσία όπου αναμένει να βρει έναν φορτωτή εκκίνησης (bootloader).
  2. Το τσιπ της μητρικής πλακέτας εκτελεί τον bootloader, ο οποίος ορίζει κάποιες οδηγίες στη μνήμη για την CPU. Οι οδηγίες αναφέρουν ότι πρέπει να αναζητήσει μια συσκευή εκκίνησης, όπως Drive 1, Drive 2, DVD-drive, και θύρα USB, και με αυτή τη συγκεκριμένη σειρά.
  3. Το τσιπ της μητρικής πλακέτας λέει στην CPU να εκτελέσει αυτές τις οδηγίες που μόλις φορτώθηκαν στη μνήμη.
  4. Η CPU, αφού διαβάσει τις οδηγίες, πηγαίνει στον προκαθορισμένο Drive 1, που συνήθως είναι ο σκληρός δίσκος του υπολογιστή μας.
  5. Εάν εντοπίσει ένα πρόγραμμα που λέγεται Master Boot Record στην αρχή του δίσκου 1, το διαβάζει. Στη συνέχεια, κάνει ό,τι του λέει το MBR.
  6. Εάν δεν βρει ένα MBR, πηγαίνει στο επόμενο βήμα που είναι ο Drive 2. Αυτό επαναλαμβάνεται μέχρι να βρεθεί το MBR.
  7. Μόλις εντοπιστεί ένα MBR, αυτό λέει στη CPU να φορτώσει περισσότερα στοιχεία στη μνήμη. Στη συνέχεια, λέει στην CPU να τα εκτελέσει.
  8. Ο bootloader αρχίζει να φορτώνει τον πυρήνα, όπου ζουν οι οδηγοί των συσκευών.
  9. Στη συνέχεια, υπολογίζει ποιο λειτουργικό σύστημα πρέπει να φορτωθεί ή μπορεί να παραδοθεί σε άλλο φορτωτή εκκίνησης (όπως ένα dual-boot Linux/Windows).
  10. Κατόπιν, ο bootloader φορτώνει τις προκαταρκτικές οδηγίες για το λειτουργικό σύστημα στη μνήμη.
  11. Το λειτουργικό σύστημα φροντίζει να φορτωθούν όλοι οι οδηγοί.
  12. Το λειτουργικό σύστημα ελέγχει τον εαυτό του για να βεβαιωθεί ότι όλα είναι εντάξει και ότι όλες οι ενημερώσεις έχουν εγκατασταθεί σωστά.
  13. Το λειτουργικό σύστημα φορτώνει όλα τα υπόλοιπα που χρειάζονται για να λειτουργήσει απρόσκοπτα. Στη συνέχεια, αρχίζει να φορτώνει και τις υπηρεσίες που έχουμε έχει ορίσει για την εκκίνηση, όπως το antivirus, κ.α.
  14. Η εκκίνηση υπολογιστή ολοκληρώνεται με το λειτουργικό σύστημα να μας παρουσιάζει την επιφάνεια εργασίας, έτοιμη για χρήση.

A massive free guide to building web apps with ReactJS


The React Handbook – a massive free guide to building web applications with ReactJS (116 minute read).

How to build your own Tetris game using Python and Pygame (2 hour watch).

The story of how Christina went from stay-at-home mother of 3 kids to working full time from home as a JavaScript developer (3 minute read).

Learn MongoDB – the popular NoSQL database – by building a Node.js CRUD app from scratch (75 minute watch).

Over the winter holiday, Angela challenged herself to build one coding project each day for 20 days. Her resulting apps are fun and elegant. (6 minute read).

freeCodeCamp is a donor-supported nonprofit. Help the community reach our goal of 10,000 monthly supporters. (We’re already 41% of the way there!) Become a supporter!

Happy coding!

  • Quincy Larson

Teacher at freeCodeCamp.org

UBOS, η διανομή που λύνει τα χέρια διαχείρισης διακομιστή


Το UBOS αποτελεί μια εξαίσια διανομή τόσο για το Raspberry Pi όσο και για υπολογιστή. Διανομή για ειδικές χρήσεις. Η διανομή είναι βασισμένη στο Arch Linux.

Σκοπός είναι η διευκόλυνση στην εγκατάσταση και διαχείριση των προσωπικών διακομιστών από τους χρήστες και στην διευκόλυνση για τους προγραμματιστές να δημιουργήσουν προσωπικές εφαρμογές για το διαδίκτυο. Βέβαια η όλη αυτή διαδικασία έχει στόχο συσκευές Internet of Things. Η Indie computing (η εταιρία που στο στηρίζει) το έχει πετύχει σε 2 συσκευές. Τις UBOSbox Nextcloud και UBOS Live. Και τις 2 τις είδα να δουλεύουν στο συνέδριο Nextcloud.

Συνεχίστε την ανάγνωση…

To OpenArchives.gr σε αναβαθμισμένο περιβάλλον με νέο έγκριτο επιστημονικό περιεχόμενο


Το OpenArchives.gr, η μεγαλύτερη ελληνική πύλη πρόσβασης σε έγκριτο επιστημονικό περιεχόμενο, που αναπτύσσεται από το Εθνικό Κέντρο Τεκμηρίωσης (ΕΚΤ) και η οποία συγκεντρώνει ήδη 723.000 ψηφιακά τεκμήρια από 73 συλλογές, 61 φορέων, ανασχεδιάστηκε εικαστικά, αναβαθμίστηκε τεχνικά και εμπλουτίστηκε σημασιολογικά, προς όφελος της ερευνητικής, της εκπαιδευτικής και της επιστημονικής κοινότητας που εξυπηρετεί.

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

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

Ο επισκέπτης της ανανεωμένης πύλης OpenArchives.gr μπορεί πλέον να περιηγηθεί από ένα κοινό σημείο σε περισσότερα από 723.000 ψηφιακά τεκμήρια και να αναζητήσει συλλογές γκρίζας βιβλιογραφίας ακαδημαϊκών ιδρυμάτων και επιστημονικό περιεχόμενο που παράγεται από φορείς έρευνας, επιστήμης και εκπαίδευσης. Διδακτορικές Διατριβές, μεταπτυχιακές εργασίες, βιβλία, δημοσιευμένα άρθρα σε επιστημονικά περιοδικά, τεκμήρια συνεδρίων, βιβλιοκρισίες, συνεντεύξεις και ηχογραφήσεις είναι ορισμένοι μόνο τύποι περιεχομένου που συγκεντρώνονται στο αναβαθμισμένο διαδικτυακό περιβάλλον του OpenArchives.gr. Μεταξύ των συλλογών της πύλης ξεχωρίζουν και σπάνια τεκμήρια που εκδόθηκαν το μακρινό 1718, όπως το βιβλίο Istoria delle moderne Rivoluzioni della Valachia!

Συνεχίστε την ανάγνωση…

Το ρομποτάκι Thymio ως τηλεχειριστήριο (Remote Control) «ψηφιακών» αντικειμένων στην οθόνη


Η εκπαιδευτική ρομποτική με το Thymio, ευτυχώς, μπορεί να έχει διάφορες εφαρμογές και εκφάνσεις όπως ήδη αναφερθήκαμε στην προηγούμενη ανάρτηση μας με τίτλο: «Η διασύνδεση «Thymio+Scratch 3.0»: Ευκαιρία για να ανοίξει ο δρόμος προς τη δημιουργία νέων εκπαιδευτικών σεναρίων και παιχνιδιών». Τώρα, το ενδιαφέρον μας επικεντρώνεται στην αναζήτηση δραστηριοτήτων που έχουν ως θέμα την αξιοποίηση του Thymio ως τηλεχειριστήριου αντικειμένων – sprites στην οθόνη του υπολογιστή. Αυτή η αναζήτηση αναφέρεται στην κατάλληλη επιλογή των αισθητήρων του ρομπότ με τέτοιο τρόπο ώστε να «κατασκευάζω το δικό μου» προ-προγραμματισμένο τηλεχειριστήριο που να εξυπηρετεί συγκεκριμένους σκοπούς. Παρακάτω θα παρουσιάσουμε αναλυτικά το πρόβλημα του τηλεχειριστήριου και τον προγραμματισμό του στο περιβάλλον του Scratch 3.0 (beta έκδοση). Συνεχίστε την ανάγνωση…

Platformer Game Tutorial using JavaScript


This tutorial starts with teaching how to organize the code using the Model, View, Controller (MVC) strategy and the principles of Object Oriented Programming (OOP). Then, it shows how to program movement, draw a tile map, and detect collision. Finally, the tutorial teaches how to animate the sprites, load levels, and collect items.

After watching, you will be able to apply the same priciples to create a game of your own.

You can watch the video here.

Publication: Cultural Routes in Kynouria of Arcadia: Geospatial Database Design and Software Development for Web Mapping of the Spatio-Historical Information


On the occasion of Kynouria and in order to achieve the protection and projection of antiquities, a web-based model is proposed for highlighting individual monuments and archaeological sites, having in mind the historical and archaeological evidence of the region, the topography, the demographic profile, and the tourist infrastructure, and combining them with the development programs for cultural routes. Therefore, creating suitable databases and mapping the monuments in the area are key prerequisites of the process, as they contribute to an objective assessment of the current situation and to make rational decisions. In this frame, modern technology provides some important planning tools (GIS, GPS, and OMS) that allow for the recording and mapping of data, viewing the relationships between them in the area where they appear, and managing their projection. The complete study of Kynouria’s archaeological routes contains the implementation of a website using free or open-source software, which should include all the necessary procedures and the historical and archaeological information material (text, maps, and photographs).

Publication is available here.

Documentation Initiative Update, UX Changes to Drupal.org


The documentation initiative was announced at DrupalCon Nashville nearly four months ago. In his keynote, Dries’ highlighted my blog post, in which I provided statistics and anecdotes about the challenges of Drupal.org’s documentation and evaluator experience. The documentation initiative aims to address these challenges.

Continue reading…

Από τον Αύγουστο 2018 η νέα έκδοση Scratch 3.0! Ποια είναι τα βασικά χαρακτηριστικά της;


Πηγή και πλήρες άρθρο με παραδείγματα.

Η δοκιμαστική έκδοση του προγραμματιστικού περιβάλλοντος Scratch 3.0, γραμμένο σε HTML5, βρίσκεται σε φάση ανάπτυξης και προβλέπεται η ολοκλήρωση της να πραγματοποιηθεί τον Αύγουστο 2018.

Στα 11, περίπου, χρόνια λειτουργίας του αποδείχτηκε ότι η μεγάλη εξάπλωση του «ανοιχτού λογισμικού» Scratch, παγκόσμια, οφείλεται και στην εκπληκτική «Κοινότητα» που δημιουργήθηκε από τον M.Resnick και την ομάδα του στο Media Lab του Τεχνολογικού Ινστιτούτου Μασαχουσέτης (ΜΙΤ) και παρέχεται δωρεάν.

Σύμφωνα με τα στατιστικά στοιχεία που δημοσιεύονται, τον προηγούμενο μήνα Μάιο οι εγγεγραμμένοι χρήστες (user registered) ήταν 28.989.643 και τα αναρτημένα προγράμματα (projects shared) 32.753.328.

Το Scratch 3.0 είναι γραμμένο σε HTML5 και είναι δημιούργημα της ομάδας του Scratch στο MIT σε συνεργασία με τη Google. Έτσι, φτιάχτηκε για να λειτουργεί κανονικά KAI στα κινητά τηλέφωνα ή tablets που χρησιμοποιούν το λειτουργικό σύστημα Android της Google, κάτι που δικαιολογεί το μέγεθος των blocks. Ας σημειωθεί ότι όσα αναφερθούν εδώ αφορούν αποκλειστικά στο προγραμματιστικό περιβάλλον και όχι στη δομή και το περιεχόμενο του website της «Κοινότητας του Scratch».

Ας δούμε τα βασικά χαρακτηριστικά

  1. Γίνεται προσπάθεια ώστε όλα τα projects που δημιουργήθηκαν με το τρέχον περιβάλλον Scratch 2.0 να τρέχουν στο νέο Scratch 3.0. Όσοι ενδιαφέρονται μπορούν να δοκιμάσουν τα δικά τους projects στη διεύθυνση https://preview.scratch.mit.edu/  με κλικ στο «View 2.0 Project» 
  2. Τα περισσότερα blocks του Scratch 2.0 διατηρούνται και στη νέα έκδοση.
  3. Οι επεκτάσεις – extensions στο νέο Scratch 3.0. Αυτό που ολοκληρώνει και απογειώνει το Scratch με τα sprites – αντικείμενα στην οθόνη είναι η διασύνδεση τους με τον εξωτερικό κόσμο (όπως, για παράδειγμα με διάφορα ρομποτάκια και υπηρεσίες στο διαδίκτυο) με τη βοήθεια των επεκτάσεων – extensions της γλώσσας προγραμματισμού. Γνωρίζουμε ότι κάτι τέτοιο συμβαίνει ήδη με το Scratch 2.0 για τρεις μόνο περιπτώσεις που αναφερθήκαμε: PicoBoard, LEGO WeDo 1.0 και LEGO WeDo 2.0.Αλλά αυτές οι επεκτάσεις έχουν το χαρακτηριστικό να εμπλουτίζουν το Scratch και όχι μόνο για τον τομέα της εκπαιδευτικής ρομποτικής. Έτσι, οι επεκτάσεις μπορεί να αναφέρονται σε ποικίλους τομείς όπως η μετάφραση κειμένου από μια γλώσσα σε άλλη καθώς επιτυγχάνεται η σύνδεση με τη δωρεάν υπηρεσία Google Translate.Σημείωση: Ο εμπλουτισμός του Scratch 3.0 με ποικίλες επεκτάσεις μου θυμίζουν αυτές του πειραματικού διαδικτυακού ScratchX και αποτελούν, τελικά, τον προάγγελο τους.

3D Printing For All Students Has Never Been This Easy Thanks To @SelfCAD


SelfCAD’s mission is to ensure that 3D design and printing is accessible to everyone. Of course, this includes professional designers; but it also includes hobbyists and students who have little to no prior experience using CAD/CAM software.

Listen to this episode (from TeacherTube).

Using IPv6 to Bypass Security


By default, modern operating systems usually enable IPv6 with automatically configured addresses. In contrast to IPv4, IPv6 actually operates IP at layer 2 in the OSI model instead of using a separate protocol like ARP in the case of IPv4. Therefore when an IPv6-enabled system is connected to a network, it will configure itself with a layer 2 address in the fe80::10 address range based on its MAC address and will listen to the default IPv6 multicast addresses (ff02::/10) for routers that advertise their presence.

When either IPv6 or IPv4 are set up for auto configuration, but no configuration servers are present on the network, other attacks are possible by introducing rogue servers to answer these configuration requests. Modern operating systems prefer IPv6 over legacy IPv4 and will use a rogue IPv6 connection by default if one is available. This allows an attacker to hijack traffic such as DNS lookups. Tools and write ups to exploit this configuration attack are already available, for instance https://github.com/fox-it/mitm6 and thus aren’t covered in greater detail in this post.

Click here for the source and the full article.