Parkinson’s Law

  • 2 min read

The more time we have to do the job (especially in the office), the longer it takes. Work complicates to fill the available time. Check out Parkinson’s Law and understand why!

Long-term thinking

  • 2 min read

Everything around us makes us concentrate on what is available immediately and instantly. Short-term gains and results are much more appreciated than long-term with much better results. Long-term thinking and acting following this thought is the key to a peaceful life on your own terms.

UUID as Primary key with Ecto

  • 2 min read

A simple example of how to introduce a Universally unique identifier (UUID) into your project. You just need to remember a small modification in the migration and the column type change.

Kranzberg’s laws of technology

  • 1 min read

Have you wondered about the nature of technology? Technology is neither good nor bad, nor is it neutral. The invention is the mother of necessity. The same technology may have completely different results. New needs, as well as new technical possibilities, make the impossible possible.

Ecto Named Bindings in your queries

  • 1 min read

Positional bindings can be problematic due to the order when building large queries with many different functions. Named bindings can be of great help in our challenges. It is not necessary to know the position to be able to refer to the variable. Creating reusable and maintainable queries doesn’t have to be complicated.

What could the Internet of the future look like?

  • ~1 min read

Have you ever wondered what the Internet might look like in the future? With the Wayforward Machine, we can move into the future to see how the Internet has dealt with the problem of advertising, user tracking, paywall, and all kinds of cybersecurity problems.

Phoenix 1.6 released!

  • 3 min read

We have a new version of the most popular Elixir framework - Phoenix framework. New generators, fixes and improvements are now available. Find out more about the new HEEx engine.

Recruitment and IT - when two worlds meet

  • 6 min read

A good recruitment process starts with a personalized message selected for a specific candidate. Worth mentioning which technologies are used in the project. Try to keep the first conversations short but very meaningful so that neither party feels like wasting their time.

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.