React and Redux

After a long break I am keen to keep refreshing this page and report on my recent learnings. In the meantime lots of things happened and at some point I will summarise these but for now, my two new favs: React and Redux.

React is basically a JavaScript library for building user interfaces. Its best features are that React is declarative and component based so basically it helps you build your app like you were playing with legos. Redux is on the other hand a predictable state container for JavaScript apps. Why is this cool? Well your apps will behave consistently, run in different environments and you can test fairly easily.

Image result for react redux

These two do not necessary go always together however they both are pretty cool. So first things first, where to learn them:

I was long waiting for my first WesBos course and I can say, it was a big mistake, as these courses are well worth every penny and some are totally free so, please a give a go and get some React and Redux under your sleeve today.

In an upcoming post I will detail some more of his courses as I am pretty addicted at the moment 🙂



You Whaaat? Yes, SQL, aka Structured Query Language. As boring as this sounds SQL is probably your best friend if you start building databases and adding stuff to your app. As most bigger application relies on some sort of data storing magic, time to dig in SQL. A while ago, I found this short tutorial for learning the basics of SQL and I think it is way better than the nowadays super limited Codecademy website. 

A database basically is great for 

  • keeping your data separate from your code
  • helps during backups
  • this way data is available for later analysis
  • easy to reach your database via APIs

Basically, if you want to deal with any data, learn SQL first. Apparently, it is also great for hacking.  [SQL injection is a code injection technique, used to attack data-driven applications, in which nefarious SQL statements are inserted into an entry field for execution (e.g. to dump the database contents to the attacker).]

So go on, DROP some TABLEs.

Also, here is a cheat sheet.

Ruby Monstas!

I recently discovered this amazing resource for Ruby, that teaches you great practice for beginner Ruby and for Web Apps too! I think it has been a while I ran across such a full, nicely and clearly written website such as this. The tasks and steps are easy to follow on Ruby Monstas, they build on each other and the examples and tasks are also super useful and real life like. None of that foo bar nonsense. Just projects you might actually want to do later, so the knowledge you can gather here is pretty practical. If you consider learning Ruby, do go over all their materials and try to do all the tasks. Well done Monstas!

Codebar Monthly

Last Monday was the last Codebar Monthly and I was happy and frankly quite surprised how I never actually went before. For some reason I always concluded that those who have some years of coding experience will understand everything, it turns out, 1. this is not the case, 2. even with little knowledge most of the talks absolutely made sense to me. So, let’s see them.

First we had a super interesting talk form Rabea about Progressive Web Apps.

Based on definition:

“A Progressive Web App uses modern web capabilities to deliver an app-like user experience. They evolve from pages in browser tabs to immersive, top-level apps, maintaining the web’s low friction at every moment.” (Addy Osmani)

They have some cool characteristics, such as:

  • Home screen access
  • Full screen mode
  • Splash screen
  • Push notifications
  • Exists in android app switcher
  • Works offline

However they have some other pros and also cons:

  • responsiveness
  • linkable
  • no app stores
  • browser support — only chrome opera
  • complexity

The process of these apps are a bit complex but not that complex to be honest. This includes a web app manifest, service workers, background script, front end technology and a proxy between your client app and the network. One coolness is that it can manage a cache of responses. SO after hearing about them the first time, I kinda want to make one now. 🙂

Second we had a talk about Defensive Programming in @quii ‘s presentation. The talk was quite funny but also managed to point out that sometimes it seems that programming is only fun and challenging and rewarding but most of the time it is actually tedious and frustrating, especially when we are not sure whether our code helping or hindering? Accidental complexity is a productivity killer. We must learn from the mistakes, test for many possibilities, be more defensive, be better in general (more thorough) and we have to make our code work in unforeseen circumstances — therefore the defensive programming title. It is kind of like anything that is relying on manual checks is doomed to failure. So for the long-term health of our code it needs to clearly tell a narrative — what it supposed to do.


Third we had an intro to RAM from Mollie Stephenson. I will be honest, I understand as much from RAMs and Hardware as a day old chicken about farming, so I felt I had no idea what was going on, but the presenter is my role model, as she seemed very much on top of her RAM game. I hope one day will slay in the territory of hardware too, hot that I am slaying a lot right now in software (my tests are pretty sensitive this weekend, yay TDD). Anyway, we heard about combinational chips, computing boolean functions, sequential chips, memory, the concept of time and about registers.

Fourth we had @elibelly to talk about Naming Things and how hard it actually is. To sum up our naming classes, methods, everything in code has to be descriptive, meaningful, contextual. So not just others, us, our future self understands this, but it also makes sense. Highly recommended book: Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin. Alternatively, you can browse through these slides too.

Fifth, and this was our closing talk, we get to know more about Open Source and how to get into Open Source. If you missed the 24 pull request event, keep an eye out, there will be more of these. To cite Charlotte Spencer, Open Source is pretty much FREE CODE! 

It is highly recommended to 

  • explore Github Projects
  • to contribute to something you use every day
  • to start your own project
  • collaborate with friends
  • follow developers, open source contributors 
  • just make you your first PULL REQUEST

Because every contribution matters, even the smallest one, so start small and take it from there. 

See you all next year, I had a lot of fun! ❤

(The post can be also found on Medium under codelog)

Udacity – Git

On Monday Makers pre-course started and we hit Git hard, so I’d like to take the opportunity and recommend another great tutorial for version control and git: Udacity.

The course I started and is totally free and you can find it here.

You can see a lot of videos, documents and quizzes, I personally don’t always like video tutorials but I was quite happy with this one. Documentation is great too and the way they explaing concepts is clear and to the point. Halfway through and feeling so much more confident with git and the basic concepts of version control, why we need it, why is it useful and how we can use it. So I would absolutely recommend to go for this course and do a lot of it (or all). If you are planning a career in tech, this is a must have skill.

Image result for git

Git Immersion

Probably you saw dear reader that I keep extending my list of useful sites where you can learn to code for free, or learn useful skills that are super important if you are coding. One of these skills is Git [“is a version control system that is used for software development and other version control tasks. As a distributed revision control system it is aimed at speed, data integrity, and support for distributed, non-linear workflows.” – Wikipedia].

git flow

You can learn Git on Codecademy too but I think Git Immersion is a bit more practical and makes you work way more. So the website, very useful as I said but also very annoying at some points, such as when it does not exactly specify what buttons to press to do certain things, so to save a stroke which I just had, here is an addition that is a tutorial for the tutorial, because why not. Happy gitting!



MongoDB University

So MongoDB University is another great website for many many tutorials to learn MongoDB in depths, of course for free.

The full course catalog includes courses in general on MongoDB but targeting specific languages and frameworks. This website is a very practical one, especially if you started to think about building databases and collecting data. Another great thing about these courses is that you can actually receive a certificate for the completed lessons.

Web Design in 4 minutes

Recently I came across this very useful site (Web Design in 4 minutes) via a friend of mine (@thedevgirl).

Basically think of this as a game, you keep clicking as it would be an adventure game and you keep going to explore and more details about the beauty of web design. It helped me greatly to put my CSS knowledge into place and revise what is what.

Also the site shares very important details and principles how to build a project or portfolio, so keep on reading and have fun clicking!


EMF Camp – 2016 / Guildford

So the EMF camp happened and I’m still missing it, therefore I think a post would ease my pain till I get to go again. A few weeks ago on Codebar slack and among emails there was an opportunity to win tickets to the EMF camp so I applied and since I apply basically for everything I also forgot about it. Until I got an email from these lovely people to let me know that I actually won tickets. This is just amazing!!!!  I was so happy!  After all, EMF is a nerd camp with the best kind of people. I managed to borrow a tent, get a raincoat and sleeping bag for cheap and here I come!  I was really excited to go and although I had a few ideas what it will look like and that I will get a really cool microcontroller badge I had no idea about the level of awesome I was about to enter. It’s like if I die I want heaven to be a bit like EMF but you know with proper bathrooms and beds.


So the camp.  I arrived on Friday afternoon and after I set up my tent and drank my first wine in my cute little carabiner mug I was ready to go and attend talks and do workshops.


The number of interesting talks and workshops were overwhelming.  Just to mention a few there were talks about medical imaging technologies such as MRI,  the origin of the badge, the mathematics behind Simpsons, robotics,  artificial intelligence, ethics in games and see robots. See the full list here.  There were workshops for hacking,  security and creative activities. You mostly had to choose between good or better or make a schedule to be everywhere.  There was a really cool pub as well with many types of beer, for normal prices and very kind staff who were mostly volunteers. Huge thank you for them!


And the badge. Well, the badge was the highlight of all this. Not only is it the coolest microcontroller using python but it was also part of the tickets so you know,  free. It had to be assembled together but after we did that you can start playing with it. It had a mini joystick and some basic built-in functions such as the schedule or app list and of course snake!! One of my favourite workshops was where I actually got to hack my badge and install a torch on it and solder the elements too!  So I ended up making a working torch on my badge.


Another thing I must talk about is the lights and colours and installations people set up and brought to EMF. Amazing fairy lights all over the camp, we had 8bit disco with a mesmerizing light show and many more. Anywhere you went you just felt this was a bit like Christmas, but we had more beer and it was sooo hot all day.

This was the grid, it changed its colour from green to red and all in-between. Just beautiful.

This guy made the best double sided lightsaber I’ve ever seen! Well done!

So from workshop to talk and interesting chats we stopped sometimes to collect some freebies or chill and charge in the lounge or just explore the various villages. The weather was beautiful we had WiFi and power everywhere and a cool pub.  What else do you need?  The camp was one of the most amazing experiences of my life and I definitely will go in 2018 again!