--Originally published at Hermes's Blog
This week I will implement more endpoints for the api, but first I will try to create an interface for creating the relationships between nodes, with labels and extra information.
Object-Oriented Programming
--Originally published at Hermes's Blog
This week I will implement more endpoints for the api, but first I will try to create an interface for creating the relationships between nodes, with labels and extra information.
--Originally published at Hermes's Blog
This week I worked in moving what we had so far in the app to Neo4j. There’s not too much to it, it just works with the new database. And it’s just beautiful.
--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.
--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.
--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:
--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.
--Originally published at Hermes's Blog
I ended up doing something else than what I said. I migrated the project to TypeScript and did the setup (again), I started to write helper classes and functions to work with Neo4j (our new database) and Marco created a little mockup of the android app.
--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.
--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.
--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.