I, like most people, love the feeling of coming up with a project idea. Whether it be the project as a whole or the process of creating an idea chart with all the deliverables being written out, being able to plan out everything can be extremely satisfying. What's not as fun is the execution of the plan, especially when you're working with a group. Once the planning phase of the project is done, it can be difficult to determine what gets done first and (if you're in a group) who is doing what. In my phase 3 project, we encountered several of these types of issues.
Just like in most group projects, coding projects take lots of time and communication so it's important to be honest to other group members about what your capability is in regards to the deliverables required for that project. Additionally, it is even MORE important to have patience and respect with other members of the project, even when things are not going according to plan. Communicating frustrations or confusions effectively is the key to a healthy team dynamic. Take this block of code for example:
require 'pry'
class ApplicationController < Sinatra::Base
set :default_content_type, 'application/json'
# Add your routes here
get "/post" do
post = Post.all
post.to_json
end
get '/posts/:id' do
post = Post.find_by(id: params[:id])
post.to_json
end
patch "/posts/:id" do
post = Post.find(params[:id])
post.update(
like_button: params[:like_button]
)
post.to_json
end
delete "/posts/:id" do
post = Post.find(params[:id])
post.destroy
post.to_json
end
post '/posts' do
post = Post.create(
phase: params[:phase],
topic: params[:topic],
location: params[:location],
thread_post: params[:thread_post]
)
post.to_json
end
private
# def post_params
# end
end
This is the controller file we used to connect our back and front end together. While it really isn't a lot of code, the logic behind understanding how this sends and receives responses to and from the front end was essential to get our project running. Because of this, it was just as essential to make sure I knew exactly what my group member who was in charge of the back end was doing so I could adjust the front end accordingly. While we did not experience any huge merge conflicts, other groups around us did even some resulting in a deletion of important code. Simple solutions, such as being in the same room as your group while working, could have prevented these merge conflicts. Learning from mistakes is a necessary step in becoming successful in any career path, but proper and effective communication is what will truly set one apart from the rest.
Top comments (0)