Archives for posts with tag: Makers Academy

Sorry for the lack of update but I’ve been lazy busy lately.

Last week we had a 3-day *hackathon* and worked as groups of four to build awesome apps in a relatively short-time.

I worked with Denise, Andrew and Pablo on Pacman and we actually built two versions of the game using Nodejs. One with Angular and another one using HTML5 canvas. I’ll post a link to the game when/if we deploy it on Heroku.

It was an interesting challenge and our group worked well together. Our group was representative of Makers; very diverse as we had an American, an Australian, a Spaniard and a French !

Separately, for our latest week-end challenge I built a clone of Instagram – Sardinegram!
Please signup and post your best pictures on Sardinegram.

Tomorrow we will pitch ideas for the final projects we will work on during our last two weeks at Makers. I’m sure there will be many interesting projects so I’m not really worried about that but we won’t have our say on our groups. It’s going to be the big Surprise!

At the end of the week, I’ll have completed the first half of my 12-week bootcamp at Makers.

During these first six weeks I learned how to create a web app in Ruby language, test it with RSpec, Cucumber and Capybara and put it on the web with Sinatra and Heroku. I also learned how to do the *same* with JavaScript and jQuery, worked with PostgreSQL databases, and had a go at programming in io language and practiced writing HTML5 pages and styling them with CSS3.

That’s an amazing amount of knowledge and experience to acquire in only six weeks. It wasn’t a flawless month and a half. Sometimes, I got upset because I didn’t understand things as quickly as I would have liked; at others I was so obsessed with finding a solution and finishing a project that I couldn’t eat or sleep and became tired and moody. Nonetheless, I never regretted joining Makers Academy a single time.

More importantly, I learned a lot about how to think as a developer, which will be crucial when I’ll develop the MVP for my startup. The cherry on the cake is that I met awesome people and made some good friends I hope I will keep seeing after Makers Academy.

Being at week 6 also means that this is the last week of the August cohort. That’s sad because some people from the August cohort helped us a lot and we will miss them. The good news is that we will celebrate their graduation at a Gradueen (graduation + Halloween) party on Friday. We will also meet the new October cohort next Monday. Exciting.

I can’t believe I have been at Makers Academy for 3 weeks now. That’s 25% of the whole course.

I feel tired and I struggle to get out of bed in the morning but at the same time I am very happy of what I have learnt so far. Actually, I think I have never enjoyed learning something as much as coding.

I realize that most of my life, I learnt things out of necessity (French when my parents immigrated to France), constraint (how to play the piano because my parents wanted to have a daughter who knows music), or ambition (financial derivatives to get a front-office job on the financial markets).

Even if I first decided to learn how to code in order to build a MVP for my future startup (ambition?), I quickly realised that I am getting a lot of satisfaction out of the process. And that even if I hadn’t my startup in mind, I would still be happy to be learning coding, just for the sake of learning.

After learning the basics of building a system (in Ruby language) and putting it on the web (with the Sinatra framework) over the first three weeks, we are now learning how to use databases (e.g. Postgres, MySQL, Oracle).

I find the logic of databases quite easy to understand as I had to build several (Excel-based) databases to consolidate and analyse financial data in my previous position. But as with anything related to coding, it seems that syntax will be the tricky part.

Positives/Negatives pairings:

  • The Internet is useful but it’s also a bitch with a complex language.
  • I know a little bit more about Sinatra, Cucumber, HTML and CSS but I have hardly written any code today.
  • I’ve done yoga twice today but I have also eaten two (small) bags of crisps.
  • I feel the workload is less heavy this week and people are leaving earlier but perhaps that’s because putting Battleship on the web is such a pain in the a*s that people just don’t bother.

It’s week 2 and I am really enjoying myself at MA. We have much more “after school” (and week-end!) work than I was expecting and I’m realising now that I was not realistic thinking I would be able to work on my business plan while at Makers. It would be the best way to do both things wrong. Thus I’ve decided to focus on MA for the time being.

Last Friday, we had our first end-of-week challenges. Two short challenges – on command line and GitHub – and a longer Ruby Challenge to finalise over the week-end. I will write more about GitHub in a future post,  but to put it in simple terms, it’s a sort of Dropbox-meet-LinkedIn platform for developers. If you are interested in seeing how it works you can take a look at the code I wrote for the FAAST challenge.

We also had our first retrospective on Friday. All students and coaches sat down in circle and discussed what could be improved at Makers Academy. Topics covered various areas: the course material, student-coaches and student-student interactions, the office environment. After, we had some free beers to help us work on our challenges. I don’t know if we’ll have beers every Friday or if it was because it was the last day of one of the teachers, Alex.

It’s nice to see that people at MA care about what we think and actively request our feedback. I suppose that like any *lean startup*, they have to work continuously on customer development – during the retrospective, Evgeny (MA co-founder) emphasised several times on their willingness to iterate.

And they actually act on it quickly. For example, I asked for coconut water – a first world issue really, and on Monday morning, a bottle of Vita coco was in the fridge. More importantly some students felt we were not given enough notice for the pre-course, relative to the amount of work required (60-80 hours). Having more coach time was another concern. To address these issues, Steve has organised elective “catch-up” sessions over the past two days for those who want to come back on some topics they didn’t have time to cover during the pre-course.

This week, we have to build a battleship game model, and we are working in groups of four or five. I am working with Nicole, Yvette, Andrew and James, and it very interesting to see how people think and view things differently. I feel our group has a good dynamic, which is nice, and we have now built the Ship and Cell classes. More for tomorrow.

 

It’s 9pm and I’m leaving MA only now because during the last two hours I was coding playing Pictionary with co-Makers.

IMG_2906

Today’s lectures were about:

  • Inheritance and composition. Both allow coders not to repeat themselves (a core principle of coding) when creating objects which share the same characteristics. Inheritance applies when we are dealing with several objects of the same “family” (or class). Composition is for objects of different classes (I will write more about objects and classes in a future post).

The major part of my day was spent splitting hairs with Ana (my current pair-programming partner).

This week, we are trying to re-create the system that manages Boris bikes. In this project, among different objects, we have vans which can collect broken bikes from docking stations and can also drop them off to garages for repair. For a while, we tried to figure out whether a van knew that it should go to a garage after collecting broken bikes or not. If it doesn’t, how can we know that the van won’t just hang around after collecting the broken bikes and chat some minis instead of doing its job and go to the garage to drop off these damn bikes?

It may look silly but that’s actually the sort of questions we have to ask ourselves continuously in order to write the test cases used in TDD. In this precise case, it turned out that we were trying to make things more complex than necessary.

Thus, it was not a very productive day due to all these *useless* digressions, but it taught me an lesson: when it comes to coding, better keep things simple whenever possible.

I also learned the following words: buttercup, thumb twiddling,  and chatterbox, all thanks to the amazing drawing skills of my co-Makers.

I don’t feel like writing detailed recaps, so here is a brief outline of what we did today.

  • At 9am two students from the senior cohort (I am in the September (junior) cohort, which started on September 15th; the senior cohort started 6 weeks before us) gave us a lecture on CSS. For those interested in CSS, you can check this link.
  • 9.30am Enrique introduced us to the concept of “double” in coding, which is used in the London school of TDD – so far, we had been writing our tests Chicago style. London is said to be superior to Chicago as it is a more agile way of doing things.
  • 12.30pm An external lecturer talked about the issues we can face when coding time. Coding the *right* time seems to be very complex indeed.
  • 2.30pm Steve (teaching assistant at MA)’s lecture was about regular expression, and the main conclusion was to …avoid using them when writing code. You can play around with the regular expressions with Rubular.

Guess what we did during the rest of the day? dadadadada…Pair-programming. Surprise!

Random thoughts …

  • The setting at MA.

The main area is a big open space. In the back of the room, there are several rows of desks with screens for (pair-)programming, as you would expect. The *cool* area is the front of this open space, where MA teachers and other coders from the tech industry give us lectures. It’s cool because we seat on beanbags (very comfy, especially the green ones) during these lectures, and it’s also the space where we do yoga (see ‘Balance’). But this also means that a heavy lunch is not recommended if you don’t want to be caught taking a nap during the afternoon lecture.

  • Balance

From day 1, MA encouraged us to do some physical activity. That our brain will suffer is a given. Thus, we have to take care of our body to avoid burnout. Not easy to go to the gym when you are supposed to be coding during all your waking hours. Luckily, we have the possibility to have yoga classes and meditation sessions in situ, with Dana. Isn’t it cool to do a sun salutation in the middle of your classroom?

  • Music

Before each lecture, a song is played to announce that it is going to start. It seems to be a different song each time. This morning it was the James Bond theme (because the topic of the lecture was ‘how to use a double’). Awesome.

  • Diversity

People from different countries study at MA. In the current two cohorts, there are people from France, Germany, Portugal, Singapore, Spain, Switzerland and the US (and maybe more). I hope I will improve my English and my accent now that I am no longer working at home, and talk with actual people during the day.

“Hello World!” is something I have typed many times over the past weeks, while going through some Ruby tutorials during my pre-course at Makers Academy. And typing the same two words over and over can drive someone crazy. Good. Crazy is something I have signed up for.

Today is the second day of the 12-week coding bootcamp I am doing at Makers Academy, which I hope will allow me to gain enough knowledge to be able to build a MVP by myself. (I recently quit a job in the financial industry to create a startup which will be web-based).

This will be an intensive and challenging journey. But I already know it will be worth it. I will learn loads of new stuff and I will meet and talk with interesting people from various backgrounds.

On the first day, Jordan (Director of Marketing at MA) recommended the students to write a blog. This would allow us to track our progress in the learning curve and give us some *comfort*, should we hit a wall.

Given that we are at MA from 9am to 6pm (many students stay later to work on projets) I quickly listed the things I’d rather do (or should do) with my *spare time* than write a blog :

  • Work on my business plan
  • Go to the gym
  • Pass my driving license
  • Have cheese & wine
  • Play with my cat
  • Watch season 2 of The Americans
  • Read about the latest scary developments of the Ebola outbreak in West Africa.
  • Sleep

And here am I. Creating this blog on an impulse.

Day 1

On the first day we got to know a little bit about our co-Makers and MA team members. Everyone talked about their likes / dislikes and a quirky thing about them.

Enrique (Head of Education at Makers) introduced us to the concept of objet-oriented programming and the use of class-responsibility-collaboration cards with a little group project/game about Boris’ bikes. This would be the basis of this week project, which is to build Boris’ bikes system.

We spent the rest of the afternoon pair-programming on the project. Currently, I am pair-programming with Ana, and it’s great to have 2 brains and 4 eyes to look for potential (sneaky) bugs in the code, especially when in the evening your brain is asking for a break and your eyes are becoming sticky.

When I went back home I felt exhausted. The amount of new information to absorb was overwhelming. But at the same time it brought me a great sense of satisfaction.

 

Day 2

Today we had more lectures from Enrique and did more pair-programming. It seems that we will spend a great deal of time pair-programming, since the best way to learn to code…is to actually code.

Highlights of the day:

  • At lunch time, two programmers from AlphaSights gave us a talk about continuous integration. It’s always interesting to see how the best practices we learn in theory are applied in the real world.
  • In the afternoon, I went to the meditation session given by Dana (Chief Joy Office at MA). I felt relaxed and reenergized after. Now, I am looking forward to doing yoga with Dana.