Solving problems is not easy
The initial solution we wanted to apply may turn out to be insufficient. Try to provide as much helpful information as possible. Make sure you understand all the requirements well. Don’t be afraid that something will go wrong. Failure isn’t fatal, but failure to change might be.
Health status without log request
Sometimes our application collects more logs than we would expect. Especially in the case of endpoints responsible for the server status. Thanks to a simple plug, you can inform about the system state all the time without logging this request.
The Twelve-Factor App methodology
The Twelve-Factor App methodology is a methodology for building software-as-a-service applications. It allows you to eliminate the most common problems with our applications. Some of them have already become the industry standard, so you should get to know them all. The methodology constitutes design guidelines strongly focused on cloud-native, portable, and resilient applications.
KLT principle can save your sales and business
Selling is not an easy job. The customers don’t care about you. What matters is how you can solve their problems. People often recommend and buy from people they know well, like, and trust. See how to use the KLT principle in your business.
TIL: Temporary data folder
The temporary directory for data storage is often used. However, /tmp dir is not always a good solution. Depending on the configuration, it can be represented differently. Check how you can fix it with simple modification.
Make it as easy as possible
Freedom of choice is often the biggest curse. Sometimes the basics are enough, and the rest is just an addition. Don’t overcomplicate, don’t add maintenance, and keep it simple to be less sensitive.
TIL: Cancel the scheduled send_after message
Sending a message to yourself as a process is an easy way to schedule an action to retry. However, it is not always necessary to send this message. Find out how easy it is to cancel a scheduled message.
Easy SSH connection management with configuration file
When connecting to the server with SSH, you may need to use a certificate other than the default one. Additionally, often the username is also more complicated. How do you remember it all? Special configuration file that will help us solve the problem.
Your personal security checklist
Protecting confidential data is a daily task. Thanks to a good web browser, a strong password, and other security measures, you can mitigate the risk of your identity being stolen. Use this personal security checklist to be even more secure!
Guards - simple restriction checking
Guards are a great way to check data limits. They are safe and can make the everyday work with the project more pleasant and, at the same time, limit the duplicated code. And it’s all in pattern matching!
Find leaked credentials with TruffleHog
One of the possible vectors of an attack on the system is the disclosure of the used keys, certificates, or other access data. I found TruffleHog as a tool to verify your project. The tool can scan projects on GitHub or GitLab, including entire organizations! You can attach them to your CI/CD pipeline to verify that no confidential information has been published.
Using JSON Web Tokens and their security
JSON Web Tokens known as JWT, are a great way to ensure security in communication between system parts. Remember not to trust the user and verify the data before use. JWT contains a lot of information about the user and his permissions. It is also a well-thought-out structure. It indicates in an accessible way for whom and by whom the token was prepared. Also, check out the topic of key rotation and its benefits.
Delegate tasks, and don’t be afraid to say no!
Feeling overwhelmed by work is quite a common feeling. Especially if we work on the project for a long time. Good planning can make your work more pleasant and simplified. You don’t have to complete all tasks (alone). Some tasks can even be removed. With the Eisenhower matrix you can manage your priorities.
Good error message
Error handling is an integral part of any project. However, only a few can do it well. What makes an error message good? Take care of the language of the message, its length and indicate how to mitigate errors. Have automatic bug reporting tools to quickly respond to system problems.
Speed up your daily work with Elixir console tricks
I would like to present some useful tricks to speed up your work. Elixir’s interactive shell is a great tool to make your work comfortable. You don’t need to use a browser to check function errors. You have everything available in the console!