Thrill
Jockey Project(Internship)
Stories:
1. Customer
data
As part of
this story I was in charge to write the parser for the users and the record
crate that was a simple ruby program that takes a csv file and builds a new csv
file with the data that the task on the rails application needs to run. So
after finish that parser and generate the scripts that we were going to use, we
enter into the part of the users authentication, because we needed to modify it
to tell the user that it needs to reset the password if its his/her first time
on the new site. I worked changing the code of the spree_auth_devise extension
to make a new validation when a user tries to sign in into the site. The
easiest way to do it was to take advantage of the column that the users table
of the database has, which maintains a counter of how many times a user has logged in. The
validation I made was to ask that if that counter is 0 to ask the user to put
his email, and we send one with instructions of how to get back its account
working. The email contains a link which redirect to a page that let you reset
your password. Also as part of this story I worked with cookies, that was the
way in which we think that will be the best way to manage the session in the
php part of the app. At the end we can say that the functionality was achieved,
the thing that is making us not approve that story with the client is that the migration is taking a long time,
there is a lot of data that is not consistent and there are almost 30 000
users.
2. Thrill
Jockey/ Distributed Releases
This second
story was about to make distinction between the products that are of Thrill Jockey
and the ones that are just distributed by them. So we needed to create two
actions on the products controller. Also we create the views for that, and the
thing that took more time until now was the definition of the route, because as
we defined in the beginning it was making us have troubles with the paginator element,
but after we got some help of a coworker, we were able to fix that with him. In
fact almost the whole story was made in half day, what we are missing about it
is to put the query for the distributed releases.
At the end
of this week on this project I can say that it was not what I expected
because I wanted to approve both stories. So fortunately on Tuesday we are
going to approve 16 points.
What did I learn?
Well basically I put in practise, because I've red about it and made examples but not in something that is real:
- define routes,
- add actions to a controller,
- add columns to a database table,
- add models to an extistent app,
- how to modify the content of a spree extension,
- make queries using active record syntax,
- use cookies to manage sessions between applications in different languages,
- refresh php knowledge.
How to get better?
1. First of all, one of the things that took a lot of time was the migration, so it was in part becasue we did not know about rollbacks on rails, so we are going to research about it and put it on practise for the next migration, and reduce a little bit the time that it takes to run all the tasks.
2. The second thing is that I need to keep the repos cleaner, make commits more frequently.
3. And the third thing that I could improve is not to spend a lot of time searching when I'm in trouble with something, it is better to ask, if its taking a lot of time.
4. Keep using free time to learn more about rails.
5.Testing new code, learn how to make tests with rspec-rails.
What did I learn?
Well basically I put in practise, because I've red about it and made examples but not in something that is real:
- define routes,
- add actions to a controller,
- add columns to a database table,
- add models to an extistent app,
- how to modify the content of a spree extension,
- make queries using active record syntax,
- use cookies to manage sessions between applications in different languages,
- refresh php knowledge.
How to get better?
1. First of all, one of the things that took a lot of time was the migration, so it was in part becasue we did not know about rollbacks on rails, so we are going to research about it and put it on practise for the next migration, and reduce a little bit the time that it takes to run all the tasks.
2. The second thing is that I need to keep the repos cleaner, make commits more frequently.
3. And the third thing that I could improve is not to spend a lot of time searching when I'm in trouble with something, it is better to ask, if its taking a lot of time.
4. Keep using free time to learn more about rails.
5.Testing new code, learn how to make tests with rspec-rails.
Eventwax
Project(Extra)
This week
on this project I just worked on Friday, and also that day I was verifying that
everything that we had on the other project was right, so I was not focused on it
completely. But the good thing is that I fixed a bug and finish a story as part
of my day. Also I was in a code review of what my friend and I have done the
past two weeks. I learnt that work with time
zones could be a really headache or at least is too difficult for me J. But on this project every time I
feel more confident about what I’m doing. Also the good thing with this is that
I’m learning the good news that have been introduced into new versions of rails
and ruby, because this uses ruby enterprise edition 1.8 and rails 2.3 while in the other project we are working
with rails 4 and ruby 2.
No hay comentarios:
Publicar un comentario