- Code reviews
- Static analysis
- Health monitoring: availability, resilience, etc’.
There are many options to improve your software quality. One of the most effective methods is to do code reviews with other developers.
Code reviews are as much a social interaction as a technical best practice. In a healthy engineering culture (egoless), team members engage their peers to improve the quality of their code and increase their productivity. Developers understand that the time they spend looking at a colleague’s code is repaid when other team members examine their own deliverables. These days, most of the companies (e.g. Facebook, Netflix, Google, Amazon, Uber) are embracing it, so it’s another sign that something is working well here.
Why Ask For A Peer Review?
- The most basic reason is to find bugs.
If you won’t ask for it, you will miss bugs in your code:
a. Accidental errors – typos or mixing variables.
b. Structural errors – dead code, logic or algorithm bugs, performance or architecture concerns. These are often much easier to spot for an external reviewers the see your work from their perspective.
- You preventing from yourself a great way to learn and get better – Committers are motivated by the notion of a viewer who will look over the change request: the committer tends to clean up loose ends, consolidate TODOs, and generally improve the commit.
- Your code is not as clear as you think it is nor its testability and readability.
Code reviews are very important not only for developers but also to product managers, test engineers, designers and others. In many cases, developers will be the first ones to see the benefits. It will allow them to move faster and with higher quality. Continue reading
When you are talking about cloud computing with your kids…
If after a docker installation on your mac you are getting something like:
Get http:///var/run/docker.sock/v1.20/version: dial unix /var/run/docker.sock: no such file or directory.
* Are you trying to connect to a TLS-enabled daemon without TLS?
* Is your docker daemon up and running?
You came to the right place.
If you follow the steps from official tutorial on how to install docker on Mac, you will come to a point where you can’t run docker. It took me a good chunk of time to find the solution so I’ve decided to write this short post on it. I hope it will be fixed soon as for this issue – but for now you will need to follow these 3 steps: Continue reading
In the past, when I wanted to share a Linux box with other users, it was simply by creating another user and making sure their password are ‘strong’. These days, it’s much safer not to use passwords over ssh but rather keys in order to connect (over ssh) to your machines in the cloud.
Here is the full list of commands you need to do in order to add a user. It’s being tested on Ubuntu so if you are on another OS, please continue with caution.
- Use the gcloud script to add users – It’s easier.
- Enable access for other users on Google Compute engine
- Add keypair to existing ec2 instance on Stackoverflow
A talk I gave at Campus TLV back at 2014 (but got the video just recently). The lecture starts with Hebrew for the first minute, but the talk itself is in English. You can skip to 1:07 to start view the talk. There is a new Container Engine (alpha mode), powered by the open source technology Kubernetes. It enables you to run and manage Docker containers on Google Cloud Platform’s virtual machines. Try it out with this sign up for customer programs.
[youtube https://youtu.be/6RVSTZJNgXY?t=70] Continue reading
How to pick the right (technology) tool for the job?
There are a lot of options out there. First, you need to decide where your servers will run: Google cloud platform, Amazon web services, and many others platforms that give you the ability to ‘run and scale’. Next, you need to think on the distribution platforms you wish cover and to prioritize them: Web, Android, iOS etc’.
Soon after these stages, you will hit the important questions, on your strategy. Is it going to be ‘mobile first’ or ‘mobile only’? How will you promote the product? Which channels? How to measure and tune them?
In this post, I will try to cover the tip of this iceberg. Specifically, what are some of the consideration you wish to be aware of when making the critical decisions that address your technology stack. Continue reading