What I’ll do this week (February 4)

--Originally published at Hermes's Blog

This week I’ll translate what we had in the backend to use the new database. I think that should be my first priority. Then I’ll work in the implementation for the relations between the nodes. I’m a bit worried about the fact that I’m not testing the api for the database. Maybe later. Marco is now working on the frontend web application too. He defined the roles for everyone, since we are a big team.

What I did this week (January 29)

--Originally published at Hermes's Blog

This week I did’t finish the helper functions for neo4j but I have enough functionality so that we can start working developing the basic models and endpoints for the api. Now we can create models, restrict uniqueness of some fields and index the nodes in the database for fast lookups. With this functionalty we can start managing the users, and the money pools, we still need to implement the relations. There is no news for the mobile application.

IOT and botnets

--Originally published at Hermes's Blog

Internet of things is the name that people give to whatever device that is not a pc (a microwave, a fridge, a pan, etc.) and is connected to the internet. Its purpose is to provide the device with useful functionalities that are only possible when you have the amount of data that is available on the internet, and to be able to comunicate with other devices.

The problem is, these kind of devices are super vulnerables becacuse they are never updated. Every now and then new security issues in protocols and implementations are discovered, recent examples are the dirty cow, krack attacks, meltdown and specter. These devices basically provide an army for hackers, they can infect Iot devices and take control of them whenever they want. Infected Iot devices can even propagate the infection to other nearby devices.

And so, a botnet is capable of DDoS attacks, since all their own IP addresses are unique and usually non related.

And now, the solution is, companies should update their devices, but there’s a problem, these companies are not usually very involved in tech, I mean, Google does not manufactor microwaves (though it would be cool). These companies usually stop suporting a device as soon as a new version of the device arrives to the market. I think a more realistic solution is, users should think about what they buy, do they really need a baby monitor connected to the internet? That’s super creepy if you ask me.

Source:

https://www.forbes.com/sites/bernardmarr/2017/03/07/botnets-the-dangerous-side-effects-of-the-internet-of-things/#4c826c713304

What I’ll do this week (January 29)

--Originally published at Hermes's Blog

This week I hope to finish the Neo4j helper functions. Then I’ll rewrite the logic of the application server to use Neo4j, and then I want to create the money pool events and its relation with the users. I think that will give enough work to keep me bussy for the rest of the week (maybe part of the next week too). Right now the nodejs framework available for neo4j is only a driver that lets you create a session and execute text queries. I want to write a more friendly interface for the programmer to interact with the database, similar to mongoose but for Neo4j.

My ideas for the new schemas are: The user has its profile in the properties of the node. A money pool is another type of node. Thus the users can have edges between them with the label ‘friends’ and there can be relations between the users and the money pools with the label ‘participates_in’ or something similar.

What I’ll do this week (january 22)

--Originally published at Hermes's Blog

This week we’ll continue writing tests for the server, and then developing to make the server pass these tests. I still want to find out what other kind of tests we should include.

I also expect to start working in the android App, we’ll create a few mockups for the app. And from there maybe give it some basic navigation functionality, I don’t know at this point, it all depends in how we advance in the Mobile development class.

What I did this week (january 15)

--Originally published at Hermes's Blog

This week I worked in setting up the api server. As today (january 20) we have the server up and running with signup and login methods, hashing the passwords. We have mocha tests passing. We wrote the code first and then I started searching for the test framework, but from now on we will start doing test driven development. We will define all the routes we want, what they should they do and how do we expect them to behave (errors, validations, status codes, etc.).

This is the repo for the backend: https://github.com/Web-Moviles-Spring18/Web. I will change the main branch from master to develop (a new one) and tell my team to start using gitflow (maybe I’ll have to tell them to learn it first, I’ll give ’em this tutorial: https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow).

We still don’t have anything for the Android app, but I really, really want to experience using kotlin.

Post 1

--Originally published at Hermes's Blog

We decided to change the project, instead of a note app we will be an app to split restaurant and similar stuff charges.

This week we will be polishing the idea (defining the specifics) and will create the mockups, but the technologies will remain the same (nodejs + express + react) and Android native, we are also thinking about using Stripe to handle payments (that’s still in discution).

As for me, this week I’ll setup the backend project, because before starting to work in the app we need first to define the UI, etc.