Angular.js and a careers lunch

It’s the beginning of week 9, which means we only have four weeks to go until our graduation. I can’t believe how fast the time went. I don’t know what I’m going to do with all this free time when the course is over. What do people do who don’t code all day?

Anyway, I don’t need to think about it just yet. This week I once again settled into the (dis)comfort of our usual days of 9 to 5 to 8/9/10.

We started learning Angular.js today, a JavaScript framework which provides a browser side Model-View-Controller structure. We had only seen something like this on the server side in Sinatra and Rails before.

And it wasn’t even that difficult! We’ll learn more about it tomorrow and Wednesday, so I assume the complexity will increase. But for now we displayed data from a JavaScript object (normally the data would come through an API in JSON format) and created an interactive view of this data with a search function, a display and hide functionality and a few other things. Writing these functionalities in JavaScript would have taken a lot longer, so in that respect Angular is pretty cool.

Of course it means that it’s another thing to learn and at the moment, while I’m still not comfortable with it, it’s a pain. But it reminds me of my experience with jQuery (crazy! I seriously thought I’d rather write JavaScript than jQuery because I knew how to do it… Mental! Luckily this delusion only lasted for about a day).

Homework over the next three days is to create an interactive WDI 10 yearbook page which introduces the students and what we’ve been up to. Apparently the best one will be published online. I think it’s nice to do a homework which might have the potential to be actually useful. The page will ultimately help to promote our skills and experience to potential employers.

On that note, I’m going for lunch with our careers adviser tomorrow! She made our Christmas homework into a little competition and I won. The prize is a lunch with her during which I can ask all my questions about finding jobs after the course. She hasn’t disclosed the venue yet but said that it would be a very nice restaurant, so I’m excited!


Project presentation Friday and the joys of team work

It’s Friday. Michael is wearing a shirt. The smell of nervous sweat is wafting across the classroom. It must be project presentation day!

We spent the whole week working on our team projects and now the day had come.

It was nice to see everybody’s presentations and I think each team created a well thought out project. Very impressive, considering most of us have only been doing this whole web dev thing for seven weeks and never before in a team.

I was really happy with our dog dating website. Basically the idea is that a user signs in (through Facebook!) and then sees a map (Googlemaps integration!) with other users in their area (geolocation!). Each user has a profile page and can create profile pages for their dogs. Users can message each other (Mailboxer!) and set up dates for their dogs.

I would have loved to post the link to it here (we were the only team that put their website on the internet so that people can actually start using it!) but I just noticed that there are still a few bugs which I will need to discuss with the others next week as it’s related to their bits of code.

I guess that’s what happens in a team project – sometimes you just have to let it go. There are a lot of compromises to be made and you can’t be too precious about your own opinions and ideas, unless you feel like arguing about it for hours and not getting anything done. I think I’m more of the harmony loving type so I’m happy to agree with whatever sounds vaguely sensible and just get on with it.

Comparing this week to project 1 (Tic Tac Toe XOXO) I feel like I didn’t learn as much, which is a bit disappointing. Of course, it was down to myself, I could have said that I’ll create some crazy functionality in PHP or something and then my learning curve would have been massive but I wanted to play it safe to make sure that we have a finished product by the end of the week.

So while the last weeks were a crazy whirlwind of constantly feeling stretched and learning new things, this week was a bit quieter on that front. I do feel like I got a really good understanding of using Git (the version control and collaboration system) and I learnt how to implement a new Ruby gem that I hadn’t used before (Mailboxer).

But the objective of this week was more about learning to work with others than learning about new technology. To be honest, the most challenging thing for me this week wasn’t the coding but verbalising things that I usually just have in my head when I work on a project alone. It’s not easy trying to explain something (that you might not fully understand in the first place) to others who have a different background from you and different proficiency in the English language.

It was fine in the beginning but got more stressful towards the end when the deadline was approaching and tempers got shorter.

Working in a team also meant changing my way of working which is normally a bit more fluid. I would normally start on a project and change it as I went along – so, for example, if the styling wasn’t quite right, I’d just try a couple of different colours or a different background image. Working in a team meant that we agreed on things up front and then stuck to it. For example, I couldn’t just have gone and changed all the colours because I felt like it. It would have meant explaining it to the others, discussing it, agreeing on it and then maybe implementing it, depending on the outcome of the discussion. A much longer process!

Anyway, I think the hard work paid off and we delivered a really good website. I hope to share the link soon, once we’ve fixed the bugs!

Daft Punk Sound Manager app

In week 6, when we started learning JavaScript and jQuery, we did a really fun project using the Sound Manager 2 JavaScript Sound API.

I finally got round to making it work properly, jazzing up the styling and putting it onto Heroku. Unfortunately the sound doesn’t really seem to work on mobile, so I might have to look into this at a later stage. But on desktop it works well.

If you know that famous song by Daft Punk, then crank up the sound on your computer and go to the link below! (Hint: click the buttons on the website)

Daft Punk – Work it, make it, do it…

Project week is back!

On Thursday we started working on our second larger project. Once again we will have a week to create a Rails application, except that this time it’s a team project.

Michael has predicted that by Wednesday latest a lot of us will be at each others throats but I have a good feeling about my team. I think we’re more likely to be eating a civilised dinner and drinking fine French wine than arguing over Git commits, but let’s see…

On Wednesday this week the instructional team assigned us into our groups of three or two and gave us the available project options. This time each team will have a different project. The projects were things like a website for fitness instructors to present themselves to clients, a website for the best coffee shops in the area, a website for a food sharing service, so quite fun stuff. But the most fun thing was (and my team and I agreed on it straight away): a dog dating website!

In order to have a fair process of picking the projects, we played code golf in our teams on Thursday and the team that won picked first, then the second team and so on.

Code golf is quite an interesting game whereby you have a number of challenges (holes) and you need to try to complete these with the least amount of characters of code (so basically as few strokes as possible).

Anyway, the outcome was that our team got to pick the dog dating app project. We got so excited, we set up a Facebook page for it straight away: Date my Dog on Facebook

We started planning the app on Friday and spent the whole Saturday together to work on the initial set up and figuring out a way for users to message each other (to set up the dates for their dogs) and to integrate Google maps with geolocation (to see the dogs in your area).

I think we’ve definitely got the right attitude and team spirit, now we just need to figure out that minor detail of technology…

Back end boys and front end girls*

We’re in week 7! More than half way through the course. And after the hardcore JavaScript week, we focused on slightly lighter topics at the beginning of this week. Phew!

On Monday we learnt about HAML and SASS, two languages which help you write better and more effective front end code. The syntax is different from vanilla HTML and CSS respectively but makes a lot of things more concise or lets you use functions and variables where you normally can’t. Pretty cool.

On Tuesday we learnt how to implement a log-in functionality with omniauth (“log in with Facebook/Google/Twitter etc.”) and in the afternoon we learnt about responsive design (media queries, mobile first approach, hamburger menu – just to throw some funky buzzwords out there).

To summarise, a lot of front end related things happened. And I found it relatively easy and straightforward. However, I got the impression that some of my classmates struggled with it for one reason or another. And these classmates were mainly men.

Huuuuhhhwwehhewww… yes, I’m moving into dangerous territory here, but hear me out.

I’ve noticed in our course that it seems more likely that boys will be good at backend database stuff and girls will be good at frontend. I understand that we’re not really a representative sample because we’re only 6 girls and 11 boys.

But it reminded me of the languages vs STEM subjects phenomenon in school. There are these language girls who are really good at learning foreign languages (I was one of them) and the maths and science boys who can hardly speak a work of French but excel in statistics.

Now I’m wondering: is frontend like languages and backend like maths? Am I a typical frontend girl just like I was a typical foreign languages girl? Are people who are good at foreign languages good at frontend?

If my observations are correct, should the initiative ‘Girls who code‘ be changed to ‘Girls who master backend development’ and do we need a frontend Codebar for boys only?

Yes, yes, I can hear you all screaming that these are generalisations and the boys are simply not interested in pretty pictures and that I should stop being sexist and just get on with it. But it’s something that I’ve noticed.

What do you think? Am I right? Am I wrong? Is this all BS?

*Title inspired by the Pet Shop Boys