The best way of learning anything is by doing

As you all know, I keep repeating the same message week in and week out – the best way to learn to code is by coding. InteresImage result for don't wait for perfect just do ittingly, I stumped into an article by Richard Branson (Richard Branson is an English business magnate, investor and philanthropist. He founded the Virgin Group, which controls more than 400 companies. Branson expressed his desire to become an entrepreneur at a young age)

Read the article, it’s very interesting. It talks about how easy is to learn to code, using techniques such as following the tutorials. But remember – you really learn by doing!

Here’s the link to the article:

Learning by doing is best

https://www.virgin.com/richard-branson/learning-doing-best?utm_source=codecademy&utm_medium=newsletter&utm_campaign=2017_03_29

Web development – handy webserver for your tests

Hi all

I might be the last to have found this out, but just in case – I found this great little piece of free software: XAMPP.

XAMPP is a is a completely free, easy to install Apache distribution containing MariaDB/MySQL, PHP, and Perl. The XAMPP open source package has been set up to be incredibly easy to install and to use.

What can use it for?

When your building a website, XAMPP will create a mini webserver in your computer, which means you can test your webpages like you were actually connecting to the internet. It will give you an IP address (localhost).

Also, if you’re developing databases, this tool will create an “online” SQL repository using MySQL and will also create the PHP server for you to connect to it.

All these is very very handy if you don’t actually have a webserver available to you.

You can download here: www.apachefriends.org

A very common question: What coding language should I learn?

Let me start with this quote from a great man….

“If you have a story to tell, you can tell that story in English, French, Spanish, Irish… the language is important just as long as you have a story to tell”

Harold

So what do I mean by that?

The main objective of a coding language (or any language for that matter) is to allow you to communicate a message. If you got no message to tell (the “story”) then the language is not very important!

Makes sense, right?

But I haven’t really answered the question: what is the best coding language to learn?

I will answer this in 2 parts:

The first part of the answer to this question is you need to concentrate first on learning who to tell a story – what do I mean? learn to solve problems in logical steps.

For example, how do you make a jam sandwich? Look at the video here:

Funny, right? look how does the teacher (the computer) react to your commands (instructions).

The first step for a coder in any language is to be able to organise instructions in a logical manner. The language is not important for that – it’s the logic, the series of steps to complete a task or solve a problem.

The second part of the answer is the language that you choose depends on the what is the task you want to do – for example, if you go to France on holidays, you could probably get by using only English. Might not be the best language to speak, but will allow you do certain vital tasks. It’s limited, but will work.

How about if you are a literature professor at a school in Portugal? English, French or Spanish are useless. You need to speak Portuguese!

The same applies to coding languages. Most languages will allow you to do many simple tasks. But if you want to do some very specific programs, where performance, speed, memory, etc are important, you need to chose the appropriate language.

OK – so you got this far and you’re still asking yourself – what language should I pick?!

These are my suggestions:

For almost everything:

  • Scratch
  • Python
  • Java

For web publishing:

  • HTML
  • CSS
  • Javascript

For creating Apps:

  • Java
  • Swift

For Raspberry Pi:

  • Python

For Databases:

  • PHP
  • SQL

 

PS: I found this article – I found it very interesting – in particular if you want to start preparing your career as a coder

The Most Popular Language For Machine Learning Is …

Rock Paper Scissors using the MicroBit

The Microbit is a fun little device, it allows you to program it in a variety of languages with a variety of different programming IDE’s.

The 20GBP device supports motion sensing (Titling, Shaking) and can display images on a 5×5 LED matrix. Microbits can be connected together over a radio link and share data and the device is small enough to be powered by two AAA batteries.

This project uses these capabilities to re-create a fun game – rock paper scissors using two MicroBits. I recommend using the Microsoft PXT IDE which lets you switch between Blocky and JavaScript and has the Radio add-in that this project needs…

1. Connect the two MicroBit’s wirelessly with the Radio library
2. Shake the device to make a selection
2. Randomly choose one of the three choices
3. Display the result on the LED
4. Send the result to the other Microbit
5. Work out which device won and display that to the user

How would you modify your program to make the game fun for the visually impaired?
Would it be fun to extend it to include Rock, Paper, Scissors, Lizard and Spock…

Making friends with your new assistant – Alexa

Some of you may have already met her or her friend Siri, they perform a similar function, they are good listeners and really want to help you with your problems. I am of course talking about Amazon’s AI tool which has started to be embedded in a number of devices – including Amazon’s own Echo device.

Here’s how it works:

1. You wake up Alexa – Amazon echo is listening for you to say Alexa – other devices need to have a button
2. You talk and the device records
3. The recording is forwarded to the Amazon AI
4. The AI decodes what you have said and determines an answer
5. The response is played back to you.

Well the good news is there’s a public API for developers and a some Python code out there to allow us to connect to it. There’s a small amount of wiring but not much! Try it out…

https://github.com/sammachin/AlexaPi

And when you have connected to it, now you can connect it back to you (eg using IFTTT)…

Interested in Machine Learning and other types of analytics?

Well, I am. I’m learning and reading books and articles about the subject.

I find it fascinating, and while none of this is new, this is the first time we have such vast amount of data available to our projects.

For instance – if you need data to run algorithms and see what predictions your algorithms can make, here’s a great resource:

https://data.gov.ie/data

If any one would like to work on a project for Coolest Projects using AI, Machine Learning and predictive analytics  – let me know!

Here’s a teaser idea: Dublin Bikes – what can your app/website figure out based on Dublin Bikes data sethttps://data.gov.ie/dataset/dublinbikes