Team Qameta Blog Posts

Analyzing Geofeed Technology to improve IP networks

Reading time: 3 minutes

Geofeed is a list of IP networks with basic geolocation information. It is published using CSV format through an http(s) address. Most of these addresses are shared informally between trusted parties. Some were published on sites like Reddit: Starlink has published IP Geolocation mapping.

Fix Flaky Rails System Tests caused by slow scrolling or animations

Reading time: 6 minutes

Flakiness on browser-based system tests (integration tests) in Ruby on Rails may have a lot of different reasons. One is scrolling, which may be slowed down by browser setup (smooth scrolling), JavaScript callbacks which result in some kind of events like for animations, etc.

Howto migrate from Webpacker to jsbundling-rails in Ruby on Rails

Reading time: 9 minutes

A lot of Ruby on Rails applications created with Ruby on Rails version 5.x or 6.x or even upgraded from the previous versions are using webpacker as their primary asset pipeline. But now as webpacker has retired, it is time to move on.

Howto migrate from Webpacker to cssbundling-rails in Ruby on Rails for CSS

Reading time: 6 minutes

A lot of Ruby on Rails applications created with Ruby on Rails version 5.x or 6.x or even upgraded from the previous versions are using webpacker as their primary asset pipeline. But now as webpacker has retired, it is time to move on.

Howto remove sprockets-rails from you Ruby on Rails project

Reading time: 3 minutes

Before removing sprockets-rails from dependencies of your Ruby on Rails project, check whether you are surfing images or fonts using sprockets through assets paths like: app/assets/images app/assets/fonts … or any other assets except Style Sheets (CSS): app/assets/js If you are using cssbundling-rails the sprockets default path for Style Sheets is used by default:

Copy Files Compressed with Tar via ssh from and to a Linux Server

Reading time: 5 minutes

Copying files from a development machine or a server to another one may take up a lot of time, resources and traffic which dependent on the task may be more or less a problem. There are common Linux/Unix tools like scp and rsync to do the job, but they may be a wrong choice dependent on the task like:

New Alternative Search Engine: neeva and neevaAI

Reading time: 2 minutes

Today the new neevaAI search engine launched on Product Hunt. This is the third launch on Product Hunt with all new added AI functionality. What is neeva? Neeva is an alternative search engine focusing on better results. They say about theirself:

To use or not to use assert_predicate with minitest in Ruby

Reading time: 3 minutes

Recently RuboCop started to blame my assert something.booked? style tests in minitest and telling me this: Minitest/AssertPredicate: Prefer using `assert_predicate(something, :booked?)`. I’ve looked for the corresponding Pull Request and also checked the final Rubocop Minitest Style Guide: Assert Predicate. According to the documentation, we can read:

Target Alternative Search Engines through IndexNow

Reading time: 4 minutes

Targeting alternative Search engines by simply looking to search engines market number may look like a waste of time, but there is a lot of value we may miss. IndexNow Technology is here to help you with this target. Why targeting alternative search engines at all?

Define Default URL for ActiveStorage to fix Mixed Content Error

Reading time: 3 minutes

Using ActiveStorage with external services like AWS S3 for saving and surfing attachments like images is great. The setup is well explained in Active Storage Overview in Ruby on Rails Guides. But if you start using it, you will maybe encounter some problems, which are not that easy to find or debug, as they mostly appear in production.

Define Canonical URL in a Hugo Theme

Reading time: 2 minutes

Hugo is a Static site generator, but links to your site may contain optional parameters like ref=... which may produce duplicate content for search engines. You can use canonical URL to define, which URL should be used by Google and co.