Unboxing Web Literacy


Maybe I am excited but I am also extremely inspired right now!

I just had a call with Ake Nygren, a librarian and fellow Mozilla Rep from Sweden. Ake is trying to raise the awareness of Web Literacy in his library by mainly organizing cryptoparties in libraries.

Swedish library system is a close digital environment which needs a lot and fundamental changes in it’s roots for Ake’s (and other fellows) efforts to start having impact.

The purpose of this blogpost though is to talk about his side project, putting Web literacy in a box. Oh yes, he wants to transform the digital world to a physical one.

He is building physical boxes equipped with remixable material and gamified recipes for mobile maker workshop activities anywhere, e.g. a library, a school, a youth center, an NGO etc. The idea is to build a mobile makerspace which can be run literally everywhere. The interaction with the boxes should spark discussions and reflections on maker culture, digital literacies and the world we’re living in.

You can read the complete description of his initiative here and check his activity in tumblr.

This is the kind of people we need, this is the kind of people we should be! Curious, who are never afraid to challenge themselves and people who never settle. And this is the way we need to start thinking, by having a broader vision, adapting the “hacking” culture and looking for opportunities which will help us implement our vision.


Starting a project – the open source way


You should start/build your project in a way where anyone can help you build it or evolve your work.

What’s the purpose of building something on your own when you can build it faster and in a more efficient way with others?

Nowadays we have all the tools and resources we need in order to start our own project. Stack overflow, github, instructables and hackaday are only a few of the available resources/tools which will help you build the most challenging hardware or software project.

But how we engage more people in our building process in order to achieve great things together?

Continue reading

Running multiple containers mapped in different domains – the discourse example



“Do you want to have multiple docker containers in one server running different services, all mapped in different domain names and discourse to be one of them?”

The idea

This is another blog post coming directly from TechMinistry, Thessaloniki’s local hackerspace.

It’s the time of the year where we are brainstorming about the redesign of our website. We want to add some visibility in our hackerspace’s activities and promote participation within the city’s online community.

So we decided to give Discourse a try to in order to explore all of its features and especially its API.

Unfortunately we didn’t have a spare server to host it so we had to install it in a new docker container since our website already exist in another one.


The problem

Our problem was how to test discourse while there was another docker container listening to the same port, 80.

Hint: “nginx reverse proxy”.

After a lot of “ducking” we found that you can set up an nginx reverse proxy server outside the 2 containers in order to handle the requests.

Configuring NGINX

In your server (NOT in any of the containers) you need to create a configuration file and put it inside /etc/nginx/conf.d .

sudo nano /etc/nginx/conf.d/default.conf

The file name doesn’t really matter but inside the it you need to paste the contents of this file.

As you can see in the configuration file, there are two different “apps” (you can change their names if you like) which each one is pointing to a different port in the localhost.

upstream app-a {

upstream app-b {

Nginx will forward traffic to these ports, depending on which app you are trying to access.

server {
server_name techministry.gr www.techministry.gr;

location / {
proxy_pass         http://app-a;
proxy_redirect     off;
proxy_set_header   Host $host;
proxy_set_header   X-Real-IP $remote_addr;
proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header   X-Forwarded-Host $server_name;


At this part we are making clear to nginx that the requests for the techministry.gr URL belong to the app-a and should be forwarded to the relevant port. The same for the other app.

Now we only need to update the nginx process and start the containers. In order for these changes to take affect without restarting nginx you can use the following command:

sudo nginx -s reload


Configuring a simple docker container

Let’s run the website container:

docker run –name website -p 2121:80 -t -i -d techministry

Now the website container will forward the traffic that receives from external port 2121 to internal port 80.

Configuring Discourse for the nginx reverse proxy

For making a similar configuration for the discourse container we will need to edit it’s configuration file. We are assuming that you have already followed the Discourse installation guide and you are ready to launch it. Before launching it you need to go back to the app.yml file and change the EXPOSE port to 2020.

nano containers/app.yml

and change the “## which TCP/IP ports should this container expose?” line to:

– “2020:80″   # fwd host port 80   to container port 80 (http)
– “2222:22″ # fwd host port 2222 to container port 22 (ssh)

Then you follow the discourse installation guide for building the image and running it.

When the installation is complete and the container is up and running you can visit your fresh discourse installation by simply accessing the domain name you reserved in the nginx configuration file which in that case is http://betatechministry.gr.

You can also access the container using your server’s IP followed by the container port – in that case


Following this technique you can have multiple docker containers running different services, all mapped in different domain names.
Pretty awesome, right?

I want to give a special credit  to my friend and TechMinistry’s member Alexandros who dedicated a lot of his free time for this.

You should start a hackerspace, TODAY! – part 1


Six months ago, along with some crazy friends we started discussing the idea of creating a hackerspace in my hometown, Thessaloniki.

After a lot of planning where more people joined, we managed to build from SCRATCH, the Tech Ministry – Thessaloniki’s Hackerspace. “The how” I am going to describe it with details in another post.

Since day 1, a lot of people were mocking us because we were dedicating a lot of money and effort in transforming an empty basement into a hackerspace. These people believed that we should – somehow – get our money back instead of “wasting” them for an empty space. Today – after 2 months and after a lot of effort, the space is almost complete and fully equipped so I would like to share with you how I am planning to get the earnings of my investment.

Today I had the opportunity to spend more than 14 hours in the space with some brilliant people working on a variety of projects.

  • We worked and managed to transform our outdoor into an RFID featured door (had to hack the door’s metal case in order to install the electric strike).
  • Brainstormed on techniques for transforming solar energy into electric energy and aquaponics.
  • Brainstormed on upcoming events and planned 2 new ones.
  • Had a short docker hands-on session.
  • Learned more about apache’s configuration.
  • Worked on installing, configuring and using owncloud’s API.

It’s 1:55am (woke up at 7:30am) and after this exhausting day I am still FULL of energy, writing this blogpost and ready to continue working on my favorite projects!

Can you now understand why I am so passionate and thrilled about this place? Because anyone can do amazing things without any previous experience, by simply spending his time with some brilliant people. This is the earning of my investment, gaining experience on doing amazing stuff with amazing people!

Have I also told you that a hackerspace is not only a space but it is actually a community? Yes! More on part 2.😉

So what’s your excuse for not joining a hackerspace or starting one?


What a Fedora winter!


Hello readers! It’s been a long time since my last post. Apologies for that but I was working on an online IDE for Arduino with the rest of the Codebender team.

However I think it’s time to share with you some of my “adventures” inside the amazing Fedora world!

OSOL Conference Szeged

In November I was invited by the Hungarian community to attend their yearly national FOSS conference named OSOL Szeged 2014.

It was an amazing experience since I had the opportunity to meet in person the awesome local Fedora community and have a presentation to OSOL event on the upcoming Fedora products. Thank you Levex for organizing the presence of the Fedora Project in OSOL Szeged

It was one of the moments where I really enjoyed my presentation since I received a lot questions and had some interesting discussions. And when you have a lot of questions you know that the topic of your talk was interesting and the audience was actually listening to you.

The feedback I received on our decision for dramatically changing the Fedora operating system and creating three different but more innovative products was really positive and encouraging.

One of the highlights of the event and my whole trip was the energy of the Fedora Hungarian community. I consider them as one of the most active FOSS (not only in Fedora) communities in Europe who focus on actual contributions and not only on running events.

During my stay I had the opportunity to brainstorm with Gergely and Zoltan on how to sustain large and highly active FOSS communities. We also discussed the agenda of the upcoming Fedora Ambassadors EMEA meeting in Germany where I represented both Greece and Hungary since non of the Hungary community members was able to attend.

Last but not least I want to thank Gergely for having me in his home and make me feel like part of his beautiful family! Honestly this is something that cannot be described with words.

FAD Rheinland 2014

FAD are the initials for the Fedora Activity day, a day dedicated to the Fedora project. Actually in Leverkusen we had two days with activities dedicated on the Ambassador program with people joining from almost all the Fedora European communities.

After the introductions and presenting the current status of each community we reviewed in detail all the important events in the EMEA region for the year 2015. As a result we could be more accurate on our yearly budget. We decided to focus on events with certain audience and more technical topics where we believe the audience of our three products (Workstation, Cloud, Server) exists.

Swag production was in the agenda (as always😉 ) and we reviewed some of the existing or new ideas on producing swag. However I am sorry but I can’t share more with you, it’s a surprise!

One of the highlights of the event was the conference call with our new Fedora project leader Matthew Miller who walked on the same path for focusing on specific and more technical events where we can engage more active contributors with Fedora.

I left the event with a lot of pleasant memories and thoughts since I spent a weekend with my Fedora friends. I was really happy seeing old and good friends and meeting new ones, people who joined the Fedora Project recently and they are already active and contributing in their area of expertise.

Until the next time my Fedora friends.

MozCoffee Thessaloniki #3


Η κοινότητα του Mozilla σας εύχεται καλή χρονιά με ένα από τα ενδιαφέροντα Mozilla Coffee στην πόλη της Θεσσαλονίκης.

Τα λέμε λοιπόν το ερχόμενο Σάββατο στις 12 το μεσημέρι στον χώρο του Coho.

Θα συζητήσουμε τις τελευταίες εξελίξεις γύρω από το Firefox OS στα πλαίσια των ανακοινώσεων της φετινή CES 2015. Επίσης θα μιλήσουμε για τον Firefox Developer Edition. Ένας Firefox απευθυνόμενος κυρίως σε Web developers! Θα αναλύσουμε τα μοναδικά Firefox developer tools με τα οποία είναι εξοπλισμένος και κάνουν την καθημερινότητα του εκάστοτε web developer ευκολότερη.

Τέλος θα δούμε πόσο εύκολο είναι να βοηθήσεις και εσύ στην μετάφραση του Firefox στα ελληνικά καθώς και το πως να συνεισφέρεις στη νέα υπηρεσία τοποθεσίας: Mozilla Location Service.

Η συμμετοχή είναι δωρεάν και οι παρουσιάσεις αφορούν αρχάριους αλλά και προχωρημένους.

Σας περιμένουμε! Μην ξεχάσετε να κάνετε attend στο facebook event μας😉

Mozilla Greece

MozCoffee Thessaloniki #2

Σας καλούμε στο δεύτερο MozCoffee της κοινότητας του Mozilla στη Θεσσαλονίκη.
Πρόκειται  για μία χαλαρή συνάντηση και συζήτηση γύρω από όλες τις  τελευταίες εξελίξεις του Project. Δεν θα λείπουν συζητήσεις σχετικά με το  Firefox OS, τα τελευταία features του Firefox καθώς και ο σχεδιασμός των δράσεων της κοινότητας μας στα πλαίσια του παγκόσμιου MakerParty που  λαμβάνει χώρα όλο το καλοκαίρι και μέχρι τα τέλη Σεπτέμβρη.
Σας  περιμένουμε λοιπόν την Τετάρτη 30 Ιουλίου στις 18:00 το απόγευμα στο  καφέ Tre Marie επί της οδού εθνικής αμύνης στο κέντρο της Θεσσαλονίκης.
Εάν δε μπορέσετε να παρευρεθείτε, stay tuned στα social media προφίλ μας (Twitter, Facebook) καθώς και στην mailing list μας.