Faster test execution in Elixir

  • 3 min read

Try to use setup_all to prepare the data once and re-use it in tests. Use tags to have a better context and be able to exclude some tests. Prepare a processing pipeline to check the quick tests first, and when they do not fail, take care of the more time-demanding tests.

Dynamic Queries in Ecto

  • 3 min read

The macro Ecto Query dynamic/2 allows you to build query fragments and interpolate them into one large query. We get easy-to-manage query building in an accessible way. It allows you to control the parameters from the user and transparently create filtering of data stored in the database.

Code review is not for catching bugs

  • 4 min read

Code review can be an opportunity to sharing knowledge. Finding errors is a side effect of the entire code review process. Thanks to code review, you can promote one standard style of changes to the entire team. Don’t be afraid to ask if you don’t understand something.

Programmer’s personal branding

  • 3 min read

Personal branding is not only social media and a broad group of followers on Twitter or LinkedIn. It is the opinion of others about us and our suitability for a given topic. Building personal branding is a long process.

Response status and the security of your API

  • 1 min read

Have you thought about the response statuses of your endpoints? Some of them can be used for scanning your architecture. Some attacks on IT systems target the weakest areas, which may be addresses used for internal purposes.

Take care of your customers

  • 5 min read

Instead of focusing solely on our business, we should try to understand the client’s expectations. Your client’s success is your success. A satisfied customer is our primary source of recommendations. Treat others as you would like others to treat you.

Principles of estimating

  • 3 min read

We expect our estimates will have a positive impact on the implementation. The most significant value of the estimation is not the value itself. It is a better understanding of the project, and a consistent view of the tasks carried out.

You don’t always have to be right

  • 2 min read

It is not always possible to be right every time. It didn’t really matter who’s the solution was chosen. What counts for the customer is a well-implemented project that meets his expectations.

GitHub Copilot - a way to automatically generated code

  • 3 min read

GitHub Copilot tries to understand the programmer’s intentions and generate the code closest to the expectations. Aside from generating code, understanding the programmer’s intentions can be a much bigger problem. The use of the code created by this tool remains controversial.

Personal roadmap - find your way

  • 2 min read

Companies often create strategy plans called roadmaps. In the case of a personal roadmap, the plan is for a specific person - you. It can be a great way to achieve your goals and expectations.

Empirical approach to refactoring

  • 1 min read

We don’t touch the code in our projects with equal frequency. The tool for automatically discovering candidates comes in handy by identifying the most frequently modified files with high cyclomatic complexity. Then we can focus on these files and make changes to work with better codebase.

Knowledge sharing is important

  • 2 min read

Knowledge sharing can be a great way to grow faster. It’s also an excellent opportunity to build the image of the expert. There will always be someone we can help. Our knowledge can be helpful and a huge step in personal development.

Business doesn’t understand technical debt

  • 2 min read

Developers and business misunderstand the concept of technical debt. Building on weak foundations can result in losses and risks to your business. Instead of talking about debt, we should talk about missed opportunities.

Take notes during the meetings

  • 1 min read

Taking notes and summaries of meetings can provide a better engagement in discussions. Notes can also be a source of truth and a good reference while working. Do it on paper or immediately digitally, depending on your preferences.

New Elixir 1.12 - The developer’s point of view

  • 4 min read

The Elixir 1.12 version introduced some significant changes. The main one is the ability to create scripts and import dependencies via Mix.install. The interactive console can be more helpful in the software development, prototyping and debugging processes.