This has been a pretty gnarly 2 weeks, so I’m unsure where to even begin… So I guess, I’ll post what I’ve learned from my team project first.
So to start things off, I’ve learned some important things in Git/Github. git branch <branchname> has been something we’ve used a lot to implement features, but by first going through someone else checking to merge it into the master file. git checkout <branchname> in order to get into a specific branch. Know that if you make changes in the master branch, if you ‘git branch <new branchname>’ you will move all those changes over.
A team member, Jeremy, had also taught me how to use git rebase master while in another branch to compare and find where there are conflicts between two files.There are still some kinks in the process, but I always end up making a new branch to merge the conflicting differences in. I’ll have to fool around a bit more to find out how to make the changes and then just apply those changes.
So when we made our team, we were introduced to 2 forms of communication:
Slack – Slack is pretty much a chatroom which stores all the messages sent. So if people are online, people can just leave an input as to what they will and what is next on their plate. It’s actually pretty useful and where most of our communications are exchanged.
Trelio – Trelio is more like a message board with post-its that act like tasks. Pretty much there is a task pile, a pile for tasks in progress, and another that needs to be finished. Pretty much take your claim on which tasks you’d like, and when you finish, mark it then move on to the next task.
Agile Development – These tools play into such a philosophy, but it pretty much entails daily check-ins or stand-ups where you relay what your task is, what is blocking, and what tasks you plan to take on next.
So this is actually something that just happened for me last night, but we both got on c9.io and we both had control over what to code in a certain file. It was really cool because I was going to write a certain line of code one way, and his way of doing it was much more clean. By clean, I mean it reads well and is as close to English as possible. Seeing in live how he goes about TDD’s red-green-refactor process in real-time gave me the experience to fallback on and replicate when I code.
The main thing I’m happy about picking up is the experience as a passenger in pair-programming. I’ve always understood why tests are good, but never really solidified what to test until now. I think as team, we’re coming along fine. It’s mainly the difference in availability that makes it a bit off but we’re still completing tasks, and things are coming along.
This was an interesting experience because for one, it’s a language I know nothing about. Yes, we do some JS for the Flixter app, but nothing so extensive to where we can comprehend anything outside of the basics. But I was still able to take many things from it:
1. As advertised, development and programming groups are very welcoming. The host had pizza and drinks, and there were two speakers who spoke on an introduction to the Keystone.JS framework and Tips and Tricks for Docker.
2. Because I went to a meetup where I didn’t know anything, it made it hard to talk to people around me because they were talking about the talk topics and JS in general. But I was still able to link up with someone who came from a Ruby background and held a short conversation with him.
3. No one uses Windows. Except me. xD
4. Keystone.JS talk was actually interesting, as it is a framework that has many things out of the box right from the start, such as contact-forms, navbars, and photo-galleries. Definitely something I will look to checkout once I get a solid grasp on JS.
5. The experience. I say this because I still enjoyed the meet even though it was a language I don’t know about. So when I do go to my next meetup, which I hope to be Ruby/Rails based, I know what I will be getting myself into. I expect that I’ll probably be more comfortable as well, because I know how it is to be among a group of people who don’t, to phrase it in one way, “speak my language”. It will be like finding water in a desert and I’ll be more welcoming towards it.
I just wish they were more close to the Valley. A 30 mile drive into and coming from LA traffic is no bueno. But it was worth it in the end, and makes me wonder about other meetups even beyond web development and programming.
To top off my experience, I finished the first linked list challenge. My mentor says I’m definitely well equipped to handle any technical interview now, but I’m going to try and smash through the second linked list so I can get into traversing a tree, just for more preparation.
On a final note, if you are an aspiring developer out there reading this, but you feel like you’re on empty as far as drive goes, listen to this podcast: http://devchat.tv/ruby-rogues/131-rr-how-to-learn
They cover many topics that will hopefully help you realize you need to reignite that fire within yourself if you want to learn something.
“Sucking is the first-step to being sort of good at something”