Today we started week 4 of the hackership, but I’ll rewind the day, so I’ll start from the end.
JustÂ arrived from a meeting, with supporters from O-Platz and refugees, they want to do a demo before the camp is evicted, the deadline seems to be December 16th. It was a difficult meeting, supporters want to “organize things”, refugees want to point out certain things, there are internal problems that need to be solved, to emphasized that people are commingling suicide when receiving the letter saying their asylum has been rejected and they will be deported, they are educated and have no chance to work. Tensions appear, discussions, on one side they want to carry on with the demo organizational meeting, others want to focus on O-Platz situation, at some point one of the refugees states “You are nothing without us, we are nothing without you. We have to work together”.
Ok, that is a big topic, “working together”, collaborative work, to my mind comes the GIT workshop, git pull, git push, git blame, git add, git commit, git branch, git remote, git merge, git rebase .. more or less all of it was in that meeting too. People pulling the general idea, a demo in support to O-Platz but also against the politics of war done in Fortress Europe, people added all kind of opinions, blame the ones responsible for certain tasks and not doing it properly, creating branches to work in smaller topics, to finally merge in a common idea.
But the flow is not always easy, it depends on each group of people, the theoretical protocol may be clear, but to put it into practice is something else. Being in the O-Platz meeting means that “refugees” is not a “one-thing” but dozens of countries, cultures, personal situations, any languages, supporters are also not “one-thing” they come from different backgrounds with different experiences. But technical people are not much different, they come from different countries, different backgrounds, different cultures, many languages machine or human,Â not always easy to work with even if they are supposed to be used to do team work.
And one of the funny things, is that there is a tendency to always establish a clear line, the “you” and the “us”, the “you” and the “me”, the “user” and the “developer”, the “back-end dev” and the “front-end dev” … like 0 and 1, as is if it were the only states that a human being can think of, you can take the place of the other, you can think together,Â you can move a bit here and there and meanwhile be respectful, mmmm to build teams or group feeling is a real challenge. So many of the things that have to be built in the hackership are the same as the ones in O-Platz, group feeling, collaboration.
The GIT workshop was great, a good overview, really intense and fast butÂ I realized all the things that I learned thanks to Diaspora, how a big open source project works with git, their flow, that we really came along with many git problems that after the workshop I would have dealt with them in another way … so a cool git time !
Some GITÂ resources, that I should be checking but it will wait till tomorrow O:-)
and before the GIT workshop, it was nice to find out why this error
When trying to save an event with a location, I was getting the following error
SQLite3::SQLException: no such column: events_count: UPDATE "locations" SET "events_count" = COALESCE("events_count", 0) + 1 WHERE "locations"."id" = 1
I had no clue of why or how … after doing some googling, time to ask to get unstuck … then we checked the event model looked like
class Event < ActiveRecord::Base
validates :name, :event_type,Â :day, presence: true
belongs_to :location,Â counter_cache: true
and found out that in belongs_to :location I added a counter_cacheÂ but I had not noticed that counter_cache actually needs to create a column, as the rails guides explain
“…, you would need to add a column namedÂ
orders_countÂ to theÂ
The day began with a breakfast, not too successful, a lot of people missing but a nice big table, we wrote down how we did last week and the objectives for this week, let’s see how it goes!! Time to hack!!