Building websites and games

Yesterday we finished our MVP for our Japanisify app (as we had hoped). This means the translation algorithm is done and the user can now enter their name and see the Japanese translation!

Here is the first version of our JapanisifyAPP.

So today we’ve started refactoring the code, as our coach also told us, we need to break our really long Regex into small functions, and we also added some front end to make it look pretty, and I started on adding some extra features. For example printing your name in Japanese and showing past searches.

Some thoughts we had about potential features for our project

In the afternoon we had a games workshop, which showed us how to build a space invaders game in JavaScript (not the whole game but the important things we should keep in mind when building games). So I think I want to build a game now 🙂 I’ll probably start with building the all-time fave snake 🐍

Get a tattoo of your name in Japanese?

We’re in week 9 now (😱), which means Makerthon. In the beginning of the week we could pitch ideas, selected our favourite ideas and vote which one we want to do this week.

So for me this means, I’m now working on creating an European to Japanese name converter. So than Anne becomes (insert jp here) 🙂

First we we’re looking for an API but there aren’t any free ones available (or they didn’t work as we wanted them to), so we’ve decided to write our own algorithm which seems is challenging but fun I think 🙂

(And really only Misa from our team will be able to tell if it’s wrong 😝)

We’re hoping to have our MVP by end of today and then we want to implement some more fun stuff, such as linking to tattoo studios in the user’s area, so they can get a tattoo with their Japanese name 😂.

Angular week

Last week we covered Angular a JavaScript library. As the angular documentation isn’t the easiest to understand, we were struggling quite a bit to figure things out.

Especially test-driving seemed very longwinded. It’s not like rspec which is super quick to set up! You have to set up karma for unit tests, protractor for feature tests, you need to install Java so it can run-in just seems very big, need to install a package for nicer format documentation, mocking…

On the plus side, karma keeps running continuously in the background so you see immediately if you’re test is passing after you save your file, without manually reloading the tests.

After three days of learning angular we had a two-day group project where we were asked to build a GitHub search that shows the users, their avatar, follower and repo number. This was quite challenging since it required two API calls, we tried nesting the API calls but couldn’t get the tests working (we realised that our first passing tests were vacuous and didn’t actually prove anything 😩)

So not the most successful week, but even though we couldn’t get the double APIs to work, I think I still made progress with angular itself. I have now a good understanding of factories and services and when to use them (which in the beginning of the week I thought I’d never get 🙌).

Small victory dance

It’s as easy as ABC

With lab week almost over and week 7 around the corner, I’m slowly starting to feel nervous about what’s going to come after this bootcamp.

I’ve read this blog post about junior developers getting a job and which mentions challenges especially bootcamp graduates face: not enough computer science knowledge and/or being used to solve algorithms. So I should be learning about:

  • Graph Search
  • Big-O Notation
  • Linked Lists
  • Multi-Dimensional Arrays

as well as going to at least one meet up per week, either as attendee or as volunteer, and of course go to loads of hackathons.

I think I’ll start with the computer sciencey stuff. I had a go at creating a linked list in Ruby and found this article on big-o notation. I’ll also go back on codewars, to improve my algorithm-solving skills.

Good thing, we have this weekend off 😂

ABC – Always Be Coding

Lab week – a glimpse into the real world

We’re already halfway through the course and that means lab week at Makers academy! Usually the students could go into their own chosen studies but this time, the coaches wanted to change things up a little bit.

So we’ve been put into groups and going to work on a project within groups.

We are given the task to build an Airbnb clone, and then have to decide how we’re going to build it. We’re using for our project management. I’ve used trello before, but waffle’s big advantage is that it’s directly connected to our Github account. So for example, when one person send a pull request for their branch to master, waffle automatically moves the project into QA, so the other team members know they need to take a look at that piece of code.

We’re also having stand ups in our little groups in the morning, to see how everyone is doing, and I believe we’ll have a retrospective at the end of the week. So this week feels more like reality: making decision on how to build a project, creating user stories from specifications and estimating how long it will take to finish a certain task.

Diving into JavaScript, jQuery, AJAX….

With a coffee by my side, I’m about to start this week’s weekend challenge, but I feel like I need to recapitulate what happened this week. Because it feels like a lot!

We’ve started on JavaScript this week, which is super exciting. Finally being able to make our websites interactive is pretty cool! To speed things up, we’ve also been introduced to JavaScript library jQuery.

Part of our weekly challenge was also about using and creating APIs. We’d used the Twilio API in week 2 to get sent a text for a successfully placed order, so I knew APIs were roughly about using other services data or functionality, but that was about it. So I was quite happy that this week, we took API keys apart and had a more closer look, to e.g. get the current weather in my hometown Markkleeberg (was pretty cold); and even created our own API using Sinatra, to store the temperature the user had set on in our interactive thermostat application. To handle the requests we used jQuery’s AJAX methods, also a first 🙂

So in summary: many, many firsts this week. New concepts and a lot of reading and filtering through documentation. It definitely feels like, we’re getting less and less guidance. We did get a pill (like a summary) on Javascript and differences to Ruby (classes vs. prototypes) but other than that the resources now are mainly just links to the actual documentation. So while it feels pretty hard, and often difficult to get anywhere, this is how it will most definitely be in “real life”.