Dev Academy: Week 4 – Hello Ruby!

This week was an introduction to the language of Ruby. Starting with the Ruby Basics course on Treehouse which covered:

  • How Ruby Works
  • Ruby Strings
  • Ruby Numbers
  • Ruby Methods

Screen Shot 2015-03-29 at 8.24.54 pm

Then into the Ruby Foundations course which covered:

  • Basics
  • Objects, Classes, and Variables
  • Strings
  • Numbers
  • Arrays
  • Hashes
  • Methods
  • Loops
  • Blocks
  • Procs & Lambdas
  • Modules
  • Core – core collection of classes and modules
  • Standard Library
  • Testing

I was pretty happy with all of the stages up to Blocks. Having completed the University of Canterbury Introduction to Programming course (Python) last year, the concepts and syntax is pretty similar. So, no surprises for the first half but then there was the rest! Blocks, procs, lambdas!?!?!?!?

I have an in-built need in my brain to complete all tasks/challenges when I am doing a course of study. So even though I haven’t really understand most of the last stages in Ruby Foundations, I had to finish them all. One day, hopefully, it will all make complete and utter sense to me.

We also had 20 exercises to complete this week from as simple as creating some variables to working out if a year had been a leap year, to creating a Factorial Method. I quite enjoyed doing these as I like figuring them out.

It was good to start getting into learning Ruby. What I am really looking forward to though is creating projects. I feel I can only go so far with making loops and finding strings in arrays. So, when I get to use Ruby to make something ‘cool’ I will be really excited!

Advertisements

Dev Academy : Week 3 – JavaScript and JQuery

I have really enjoyed learning more about JS and JQuery. I knew a tiny little bit. I think I understand more now, but definitely do not understand everything that I have gone through this week.

I had already completed the JS Basics and JS Loops, Arrays & Objects, so got on with JQuery Basics. Within this course the projects were:

  • Creating a Spoiler Revealer
  • Creating a Simple Lightbox
  • Creating a Mobile Drop Down Menu
  • Creating a Password Confirmation Form
  • Creating a Simple Drawing Application

It really works for me that the tutorials are focused on creating projects. I enjoy seeing how I can use what I am learning for myself, rather then just doing stuff for the sake of learning it (although you do have to do this at times when learning programming).

Besides working through the Treehouse tutorials, one of the suggested challenges for the week was to “Make your Website Interactive”. I liked the Lightbox idea and added this interactivity to my photo portfolio site.

Screen Shot 2015-03-22 at 5.37.40 pm

If you click on an image it should come up like this:

Screen Shot 2015-03-22 at 5.39.20 pm

If it doesn’t then you may have JavaScript turned off in your browser or your browser for some reason is blocking the loading of the JS.

I am also working changing the layout and structure of my personal website and am planning on adding a JQuery mobile dropdown menu. Although, you can create a dropdown menu using HTML/CSS and after I have had a go with JQuery I am going to look into doing it with HTML/CSS as I think it will look better!

The last project was creating a simple drawing application. I haven’t uploaded this, so just an image. Pretty fun making this and exciting to add the interactivity.

Screen Shot 2015-03-21 at 5.31.27 pm

Another suggested challenge was the Treehouse course “Interactive Web Pages with Javascript”. This is creating interactivity just using JS and no JQuery and using the DOM! I am into the third stage which is “Traversing and Manipulating the DOM with JavaScript”. It is taking quite a lot of my brain power and I know I won’t have grasped everything by the end but it is a start.

I have started early on Unit 2: Ruby Fundamentals, Week 4: Ruby Basics as I have work all week and am not to sure how much time I will have in the evenings. It is going well so far and I was also able to fix some Ruby stuff in my terminal so I could run the tests for the exercises. So all round quite a productive day. And I got a surf in this morning!

More on Ruby Fundamentals soon…

Community connections

Tim Harford, Digital Technologies teacher at Wellington Girls’ College – making industry connections!

Digital Technologist

This is a description of the process I/we’ve gone through in the last 6 months to build relationships with a bunch of local tech companies, relationships that benefit our students in a range of ways.

Why?

For 2015 a personal goal has been to make links with local tech businesses. There’s three main reasons we started this journey:

Seeing how this stuff they’re learning is used in The Real World

Hearing it from the teacher is one thing, hearing it from someone who does it every day is another. It makes everything so much more [here comes a currently trending education buzzword] authentic for the students. When we’re looking at programming, hear from some programmers. When we’re doing some web development, visit some web developers. As it turns out if you’re discussing big ideas like responsive design or accessibility, there are people out there who love this stuff and are more than happy to…

View original post 781 more words

Dev Academy – Week 2

I’m now at the end of Week 2 of Phase 0 of Dev Academy. This week has focused on HTML and CSS. The main tasks we had to do this week via Treehouse I had already completed as I started on Treehouse back in the middle of January. I managed to find a link to a months free membership and started on the Front End Web Development track. So I have been working on trying to progress sites I have already made to improve the responsiveness and look. Here is my main site with links to others, all still works in progress.

I have started working through the CSS – Beyond the Basics course on Treehouse. I have particularly enjoyed learning about flexbox and multi-column layouts. It will be good to play around with these and use in sites, while still thinking about how to keep a site workable for browsers that don’t yet support these options.

I am just getting into transitions and transforms and have animations to look forward to. Who knew there was so much you could do with CSS3! I could see secondary school students doing lots of cool things with this kind of styling.

One area I would like to development more is the design of sites. I still feel that I have a very basic and limit idea of design of websites. I would like to be better at using colours and creating the look and feel of a website. Like Annie Lennox’s new albums site is wow – http://nostalgia.annielennox.com/.

Screen Shot 2015-03-14 at 4.52.48 pm

I like the pop out menu from the side and menus like this that pop down, mostly in mobile sites. Anyone know of a good place to start for basic but good design tips?

With Git and Github –

  • am really enjoying the power of branches
  • found site called “git – the simple guide” – http://rogerdudler.github.io/git-guide/, really useful
  • using GitHub pages to make websites for projects – doing this is slightly different from making a page for a user following GH pages. I found this page on how to make them manually confusing, so at the moment what I do is once I have pushed up the master branch with the inital commit, I create a new branch called “gh-pages” in GitHub and the site is created. When I want to updated the project site (website) I do have to pull the master changes down into my gh-pages branch and then push that up to the gh-pages branch on GitHub. Which is a bit round about. When I have another site I want to get online, or another one to start, I will have a go at following the Creating Project Pages manually instructions.
  • have also this week had a crack at using markdown language to add information to my copy of the weeks instructions, to show what I have and haven’t done.

Week 3 we will be getting into JavaScript and JQuery.

The start of a new journey – Enspiral Dev Academy

logoEnspiralDevAcademy

This week marks the start of Phase 0 of Enspiral Dev Academy for me. Have a look at their website to find out what it is all about, in short though I am learning to code! By the end of the bootcamp in early July I will be a whizz! (or at least a junior whizz!).

I’m in the Roa (think this means long / tall) cohort, doing Ruby and in Week 1 of Phase 0. I have learnt about the terminal, Git and GitHub so far. I had dabbled with Git and GitHub when I attended a RailsGirls Wgtn weekend in March 2014 but have never really done anything in the terminal. It has been exciting and scary installing things through the command line. I had visions of completely mucking up my computer. Thankfully that hasn’t happened….yet!

In Git I have created repos, forked them, cloned, branched  and I am enjoying learning how to do this stuff. We have also used GitHub Pages to upload our personal website. Today I decided I wanted to work on my personal site but starting with a mobile version. So instead of working on the master branch I created a mobile_site branch and was working on this. I then had the thought “but how do I view in Chrome what I am changing in my mobile_site branch?”. As a branch doesn’t make a copy that you can access via the Finder on a Mac (I think it is hidden and if it is I don’t know how to find it). I discovered through my playing on the terminal and opening up the index page from the Finder (the only index page for this project – which is where I was getting confused as having made another branch there are kind of two copies), that when I am in the mobile_site branch and I open the index.html page in Chrome (from the Finder), it will open up the version of the branch I am in within the terminal. Even if the terminal is closed, as long as when I exited it, the branch I was in was the mobile_site, then that is the page I will see in Chrome. Which I find pretty cool, as I assumed that it would be the page from the master branch. But I guess in a way that is what version control is all about. And just to make sure I understood what was happening, I changed branches a few times and checked what page came up in Chrome – low and beyond, when I was on the master branch my original page, with no changes from my mobile_site page, showed! I (strangely) find this quite exciting!

I also have the luxury of having an (old) iMac at home and having a MacBook Pro. I have been using both of them which means that I want to keep everything up to date on each device. So am getting a lot of practice at using Git. Early today I did some work on my website (on the laptop), on the mobile_site branch. I then pushed it up to GitHub and proceeded to pull it down to my iMac. However, with a git pull (I have just discovered) it pulls it down and merges it. So when I pulled it didn’t make a mobile_site branch for me and it merged into the master branch the changes I had made in the mobile_site branch. This is not what I wanted. Did a bit of searching online and found this guide to git.

Screen Shot 2015-03-04 at 3.04.07 pm

It has really clear and simple explanations of all the commands plus some visuals. And it talks about the working directory, index and HEAD – the three trees in Git. Kind of helps make sense of how Git works. I was also able to figure out the difference between a git pull and a git fetch and used a git reset to get my repo working the same way it is on my laptop. I am very pleased about that.

My personal website isn’t very interesting or exciting yet but it will be great to see how it develops over the next few weeks. Screenshot from today:

Screen Shot 2015-03-04 at 3.16.03 pm