Fueling Curiosity, One Insight at a Time

At Codemancers, we believe every day is an opportunity to grow. This section is where our team shares bite-sized discoveries, technical breakthroughs and fascinating nuggets of wisdom we've stumbled upon in our work.

May 2, 2024
The rails routes command generates a comprehensive list of all routes defined in our Rails application, displaying the HTTP method, URL pattern, controller, and action associated with each route.

#rails
syedsibtain
Syed Sibtain
System Analyst
Apr 29, 2024
find your rails code smells by using a gem called flog . Flog finds the most tortured code in your codebase.


gem install flog


then run


flog app lib


it will print the flog score for the all files that has score more than or equal to 10. Generally we should make sure flog score should be less than 10.
Note: The more the flog score , the more pain the code is in.
#rails #code-smells #flog
satya
satya
Apr 26, 2024
In Ruby, instance variables are variables that belong to a specific instance of a class. They are prefixed with the @ symbol and are accessible within the instance methods of that class. Instance variables allow objects to maintain state and store information unique to each instance.
Example:



class Person
  def initialize(name, age)
    @name = name
    @age = age
  end

  def say_intro
    puts "Hello, my name is #{@name} and I am #{@age} years old"
  end
end

# Create a new instance of Person
person1 = Person.new("John", 18)

# Call the say_intro method
person1.say_intro


In this example, @name is an instance variable of the Person class, representing the name of each Person object created. The initialize method is a constructor that sets the value of @name when a new Person object is created. The say_intro method uses the instance variable @name to give the intro of the person with their name and age when called.

#ruby
syedsibtain
Syed Sibtain
System Analyst
Apr 25, 2024
The docker stats command is a powerful tool provided by Docker to monitor the resource usage of running containers. It provides a real-time stream of various metrics such as CPU usage, memory usage, network I/O, block I/O, and the number of processes (PIDs) running inside each container. This command is particularly useful for performance analysis and ensuring that containers are running within their resource limits.
Example Explanation


docker stats db370fc6b784
CONTAINER ID   NAME       CPU %     MEM USAGE / LIMIT     MEM %     NET I/O          BLOCK I/O       PIDS
db370fc6b784   minikube   43.70%    1.243GiB / 2.148GiB   57.87%    35.4MB / 414MB


#devops #docker
nisanth
nisanth
Apr 24, 2024
We can check the default value for a given column using postgres query like this:


SELECT column_name, column_default
FROM information_schema.columns
WHERE table_name = '<table_name_placeholder>' AND column_name = '<column_name_placeholder>';


Same can be used for constraints like is_nullable as following:


SELECT column_name, is_nullable
FROM information_schema.columns
WHERE table_name = '<table_name_placeholder>' AND column_name = '<column_name_placeholder>';


#database #postgres #query
vaibhav.yadav
Vaibhav Yadav
Senior System Analyst
Apr 23, 2024
active_record_doctor performs variety of health checks to identify and rectify common database issues like missing foreign key constraints, missing NON NULL constraints, missing presence validations, incorrect presence validations on boolean columns and many more. Ref: https://github.com/gregnavis/active_record_doctor
#rails #database
sujay
sujay
Apr 22, 2024
while integrating sentry with gitlab ip whitelisting needs to be done on gitlab server (self-hosted)
#devops #sentry#gitlab
sagar.ghorse
sagar.ghorse
Apr 22, 2024
The kubectl cordon NODE_NAME command is used in Kubernetes to mark a node as unschedulable, meaning no new pods will be scheduled onto that node. Existing pods on the node will continue to run unless explicitly terminated or moved.
#devops #kubernetes
soniya.rayabagi
soniya.rayabagi
Apr 22, 2024
Debugging Kubernetes pod on helm
helm upgrade unleash-app-toggle . --debug
Adding --debug can provide more insight if the error persists, showing exactly what values are being passed to each template.
#devops #kubernetes #helm
nisanth
nisanth
Apr 19, 2024
Avoid Using Double Quotes for Environment Variables
When configuring the PostgreSQL user and database names in a Helm values.yaml file, I initially wrapped the values in double quotes. This led to a frustrating issue where I couldn’t connect to the database, receiving errors that the role did not exist. The double quotes were being interpreted literally, causing mismatches in authentication.
Solution: I removed the double quotes around the environment variables in my Helm chart and reapplied the configuration. This corrected the problem, and I was then able to connect successfully to the database.
#devops #postgres #env
nisanth
nisanth

Showing 19 to 21 of 77 results

Ready to Build Something Amazing?

Codemancers can bring your vision to life and help you achieve your goals