Code reviews are a team effort.
Michael Jordan tried for years to carry a team on his back. It wasn’t until he had a good supporting cast who knew their roles and understood the value they added to the entire organization, that he started to add championship rings to his list of accomplishments.
The same principles that go into running a successful business or a sports team are applied in the software industry. Everyone involved needs to know where the other parties are and how they’re fulfillng their specific role assigned to a project.
Progress and unity are only attained through the direction of team leaders and the participation of everyone involved in the continuity of a project, goal, or aspiration. In the software industry, code reviews are helpful for many reasons, including:
- Keeping the channels of communication open and flowing
- Encouraging growth
- Inspiring unity ...(continued)
Effective business communication heightens productivity. An important step in increasing communication and decreasing inefficiencies is to eliminate assumptions. A teacher of mine once told the class to never ASSUME. When you assume, you make an ass out of u and me.
Every entity, which has a hierarchy of employees, managers, presidents, etc, etc. is in danger of experiencing this assumption parody if the rules of the game, and more precisely, the rules of detailed tasks are left for interpretation.
This doesn’t mean people misunderstand or deliberately ignore directions. It means we are human beings using various ways to process information. The best way to improve business communication is to actually communicate and to follow-up frequently.
How do you improve business communication?
- Have an effective, clear cut plan to communicate
- Follow-up ...(continued)
Every business needs a way not just to track progress, but also predict the progress. No one likes deadlines, but they’re a necessary evil. Clients need their work done when they expect it, but we (software engineers) also have to manage those expectations. Because, as we all know, client expectations are not always accurate.
Personally, I am a big proponent of using team velocity.
- Team velocity tempers client expectations, because:
- it gives the business a tried and true method of when to expect project completions, which:
- allows software developers to focus on what they do best.
The whole idea behind team velocity is: not to create the stress of deadlines by setting an arbitrary timeline for a ticket. Its purpose is to use progress, you as the software team either think you can achieve or progress you have ...(continued)
In the software business we have stand-ups. These are morning meetings where everyone shares progress and hashes out minor issues.
Every day we have morning stand-ups. I view these as the most important meeting.
I’ve worked in places before where missing the morning stand-up costs you a dollar. The money was thrown into a tip-style jar and at the end of a long iteration we would use all the money from the jar for a party. The whole point is, the stand-up is the most important meeting of the day and missing it should be only considered for emergencies.
Stand-ups are important for several reasons:
Objective of the Stand-Up
Stand-ups are the best ways to make sure everyone is up to speed on a project. Each person attending the stand-up is expected to tell everyone on the team what they ...(continued)
Team development is important in every organization, business or group. The question is: How do you structure your development sessions so they make a positive impact on your employees and teammates?
Depending on how you structure your meetings, they can be productive or just a common annoyance. Information absolutely needs to change hands. The most productive meetings occur when everyone involved leaves feeling like they contributed and learned something.
This might sound like a futile effort where, once given a voice, a team of 10-40 people could turn into an all day invitation to stand on a soapbox and get something off his/her chest. We’ve all been in room where one person takes over and people start faux coughing and sneezing “shut your pie hole”. Visual retrospectives disrupt this leather-couch-venting-effect common in other ...(continued)
Remote Development, like anything else has its pluses and minuses. Remote working in general came under fire as recently as last week, when Yahoo’s CEO, Marissa Mayer, recently ordered the troops back to the fort. What are the benefits of remote working and more specifically, remote development?
I’ve been remote for over a year and a half. I have enough experience on both sides of the fence to weigh in on the benefits and drawbacks of saddling up with the team at the office and riding solo at my home office or remote location.
Experiences with Remote Development
After Groupon acquired Obtiva, I took a job with LexisNexis working on lawyers.com. I was working remote along with two other developers in Denver (Jim Ray and Jeff Powell). Every morning we had our morning stand-up call, which I had programmed into skype. I got up, threw on my headset and called ...(continued)
I’ve been using Passenger for my Rails projects for the past year. When it comes to testing my Rails apps for browser compatibility I like to use crossover for ie6 (on OSX), and Windows 7 for ie7 and ie8 using Internet Explorers Developer Tools. I run Windows 7 using VMWare.
When I need to test an app that’s using Passenger in VMWare in the past I’ve updated my hosts file (/Windows/system32/drivers/etc/hosts) with my current IP address. This has become a pain, and time consuming.
The solution since we can not use 127.0.0.1 for a hostname. Run this command in your Terminal “ifconfig vmnet8” and grab the ip address next to inet. Take this ip address and update your hosts file on your Windows VM. Don’t forget to copy your hosts file from your Mac to the Windows hosts file.