Translate

Wednesday 13 August 2014

Scratch & Scratch Jr.

Scratch (developed by MIT) is a website that allows users to learn coding while creating interactive stories and games. Although initially intended for a younger audience (8 to 16 years), Scratch is now known to be used by programming beginners of any age.

Scratch, like other websites/applications I've mentioned, lets the user give a series of commands to an avatar, ranging from more simple to more complex. The program also allows its users to share their own work and collaborate (by doing a 'Remix' of a project that has already been shared by others) with other projects. 



My personal experience with Scratch was very gratifying although I couldn't dedicate as much time as I would've wanted for the completion of this project since I wanted to try other tools too. However, when I first started using Scratch I completely disliked it (this was the 2nd website I tried when I began this 'learning to code' journey). First of all, I disliked it because it seems like a children's oriented interface but I struggled to get my avatar to do certain things  I intended and  it was frustrating. 

After receiving direct instructions and hints on guidance and what to do, the user completes 13 steps and can share their project if they want. The user is then practically expected to start clicking freely and learn new tricks on their own and at their own pace. If the user is not yet confident, he/she can click on one of the Step-by-Step Guides provided: Getting Started with Scratch (the main tutorial), Animate Your Name, Make a Greeting Card or Map of Scratch Editor.

Scratch Jr. is an iPad app very similar version of the website but is intended for younger children (5-7 years). The child can practically do the same projects as on the website but the commands are only shown by icons (with no words) and there are less commands available to choose from. The Android version of this app is expected to be released this year and a website in 2015. 









Play-i: Robots for Kids



"Our children are growing up in a world where computer literacy is as essential as reading, writing and arithmetic." This is the first sentence introducing this wonderful, innovative game that introduces children to the world of programming. Bo & Yana provided programming opportunities for ages 5+ while offering visual programming interface and languages, the opportunity to write code and design applications for iOS and Android using API.


Most Popular Coding Languages


As mentioned on this website, "As a programmer, you cannot ever stop learning, and as the market grows and new languages emerge, you have to stay updated. A programmer is expected to have specialization in any one mainstream language like C or java, which never ceases to be important, and choose any secondary specialization language which captures a programmer’s individual interest."

Monday 11 August 2014

Coding For Entrepreneurs

On the iPad there is a udemy app (a destination for online courses)  called Coding4Ents or Coding for Entrepreneurs Basic. It offers users a "lifetime access to 27 lectures, 3+ hours of high quality content, a community of 100900+ students learning together and 190+ discussions". The curriculum is made out of a System Setup (which includes how to setup the user's computer, setting up links and some information on student discounts for improving their businesses), Introduction to Python Basics, Your First Project: Try Django 1.6 and Next Steps (resources for a continuance of learning [codecademy is the first mentioned]). 

Each tutorial video is ranging from about 6 to 12 minutes and the narrator (Justin Mitchel), while showing his screen and all his movements on the screen, guides the user through each step of the process. There is also the option of saving the course for use offline.


Codecademy iPad App

The Codecademy app for the iPad immediately starts teaching you about commands once you open it:







 

I found the website to be far easier and more structured for learning. At the same time, the application teaches the user without really saying what it is he/she is learning.  The instructions are clear and I found the responses for the first levels were obvious and not challenging. One of the last 2 levels is for HTML and the other is for the creation of a website, which I found pretty cool.. but that's about it.
Codecademy is a website that offers free coding lessons for beginners. Unlike the other tools or applications I have posted, this website allows the user to choose the specific programming language he/she wants to learn. The following options are available: 

  • HTML & CSS
  • Javascript
  • jQuery
  • PHP
  • Python
  • Ruby
All languages target a different objective. HTML & CSS are used to create and design websites. Javascript, one of the most popular programming languages used today, is often used with HTML and used by developers to create applications on your computer. jQuery helps make websites interactive and create animations and previously knowing Javascript is an asset when learning this language. PHP can also be used side-by-side with HTML for the creation of websites and is also known for the development of dynamic web content. Python is often used as a scripting language although it also allows programmers to create the same codes in less lines. Ruby "a programmer's best friend", is a simple open source programming language 

When choosing a language to learn, the website provides you with an approximate course time for completion, the required technical level (beginner, intermediate, advanced) and the number of people enrolled in that programming language. 

In this website, the user is also presented with the option of choosing a specific project to create, such as  creating an animation of his/her name, making a website or making a galaxy. You can also follow the path of learning how to use popular APIs (Application Programming Interface) to create applications.  Some of the most popular APIs mentioned in the website are: YouTube, SoundCloud, Twitter, Bitly and Evernote. All these applications require different programming languages to work with. 

Although all these languages are still being used today, some are considered old languages and for a beginner, are not recommended, so before starting to learn a programming language, a bit of research doesn't hurt.

P.s. - If you're interested, Codecademy is hiring! :)

Wednesday 6 August 2014

Hopscotch

Hopscotch is the second iPad app I downloaded when I was exploring the coding apps available. It turns out that Hopscotch is meant for coding beginners to create and share their projects with others also learning. The user first chooses from a list of avatars (in my case, a monkey) with whom he/she will complete or create new projects.The user can choose from 4 options: Cool Trails, Monkey Run, Tricksters or a Blank Project. 

With Cool Trails, the user can give commands to avatars that will draw shapes.


Monkey Run's goal is for the user to create an extra gorilla and program certain movement commands in a game that has already been created. The user also has to move the avatar through 3 gorillas and into a pile of bananas without being caught be the gorillas. However, this is pretty basic since it requires hardly any programming since the user can just tap the iPad and the avatar will move steps instead of giving the avatar a command to move.


Tricksters requires the player to give the avatar some commands to do either choosing some commands that have already been created, such as breakdancing or jumping, or the user can create his/her own activity.

The Blank Project, as it's name depicts provides the user with an empty white screen where the programmer can give whichever commands he/she wishes to several different avatars.

My experience with this application was not positive since I find there aren't very clear guidelines as to what to do. I do like the idea of beginners sharing their projects and others being able to collaborate with them and help them develop it. However, most of the projects offered by the app creators for users lack direction, organization and difficulty. I personally do not suggest this app and feel like it needs to be further developed in order to be helpful.