BUSINESS

Weekly programmers report 23/10/2023

blogpost

Hey everyone!

It's that time of the week when we share our insights into the solutions and technologies we've been diligently working on.

The content for this report was extracted from our internal standup meetings, and ChatGPT has provided clear and concise report text.
The automation of data aggregation is made possible through a custom Slack plugin integrated with make.com, which communicates with OpenAI on our behalf.

Krzysiek:

What functionalities have been delivered?

  • Assisted with tasks including organizing emails and discussing client briefings.
  • Worked on setting up access and had an overview of how a production infrastructure update would be established. However, this was more complex than initially thought and was delegated solely to Marek.
  • Reviewed code in the project and discussed features with Mariusz, including past failures and potential improvements.
  • A ticket was moved to staging for final amendments to authorisation and template editing.
  • Adjustments were made to the project server, where the port mapping from HTTP and HTTPS to 5000 was corrected as Puma was running at 3000.
  • Demonstrated deployment process to team members and granted access rights to various projects.
  • Began writing secondary documentation.
  • Worked on several tickets mainly regarding bug fixes and refining yesterday's feature. Discovered unutilised user privilege switches.

What problems have been solved?

  • Assisted Mariusz in understanding certain aspects of various programming languages such as constructors, setters, and getters.
  • Setup for a new laptop was completed alongside giving access to several projects for various team members.

What technologies, tools or solutions have been used?

javascript, kubernetes, docker, ruby, spinacms, linux, turbo, hotwire, actionmailer, rails, notion

Karolina:

What functionalities have been delivered?

Karolina has created documentation that provides step-by-step instructions on how to add a document in the admin panel and how to enable maintenance mode on the website. She has also worked on an AI report which is now available as a blog post on the 2n website. In another project, she has created three additional test cases for the project, including ones about adding centers, creating trainings, and setting celebratory themes. Additionally, she posted about the October BRUG on Facebook.

What problems have been solved?

Karolina has prepared documentation aimed at resolving concerns and doubts of a client regarding the project. This will guide the client on where to click and what to do so that everything works as it should.

What technologies, tools or solutions have been used?

Slack, GoogleDocs, Markdown, Clickup

Mateusz:

What functionalities have been delivered?

Mateusz fixed a bug preventing access to a non-existent user, merged a pull request that removed the username from the entire application and handled a code review involving regular expressions. He added jersey_number and position to user teams and ensured successful import and data storage. In discount coupons, he moved a field from subscription serializer to team_serializer and revised the tests. He also spent time working on teams/join endpoint, added new fields and wrote many tests. Mateusz also faced a challenge with make.com where he had been sending article data in JSON format but managed to fix the issue by sending the data without JSON. Later on, he found a workaround for why the finished blog post wouldn't update, completed the integration of make with dev.to, made some changes to the user import feature, started work on emails, and began developing a standard format for standups. Next, he improved the look of the top menu, tested the production environment, developed a regular expression to eliminate special characters in external_id and prepared the homework for his evaluation with Mehdi and finally worked on deploying and testing the demo environment.

What problems have been solved?

He was able to resolve the problem of the JSON parsing in make. The issue with the faulty deployment of the production environment via GitHub was also solved by resetting the git refs.

What technologies, tools or solutions have been used?

Make.com, rspec, docker. stripe. csv, mysql, git, dokku, vps, ubuntu, regex, grape

Szymon:

What functionalities have been delivered?

Szymon delivered functionalities such as creating his own application, creating new models, views, controllers, and working with gemfiles and databases. He learned how to work on a database, including adding items to tables and relating them to users. He started authentication with Devise, managed to log in, create an account, and is now working on improving Devise and adding things to the table from the browser level. With help, he managed to set up Tailwind, realized he was using an outdated form and exchanged it for the current standard. He also developed an article creator, edited basic Devise files, and implemented login, password changing, and account creation. He changed the database from SQLite3 to PostgreSQL and implemented corresponding functionalities. He added new articles and a page for creating articles.

What problems have been solved?

Szymon resolved problems like creating his own application including new models, views, controllers, working with gemfile, routes.rb and databases. He solved a problem with entering things into the database from the terminal level and authentication with Devise. He managed to configure Tailwind CSS and refine the visual design of the entire program. He switched the database from SQLite3 to PostgreSQL, enabled article addition, user creation, and logout feature. He also implemented Tailwind into API however new problems appeared.

What technologies, tools or solutions have been used?

Devise, Ruby, SQLite3, Tailwind, PostgreSQL, JS

Jakub:

What functionalities have been delivered?

Improvements in login view and landing page were made. Learned to use git stash. Deployment procedures were also mastered and continued work on views. Configuration files were successfully implemented and fonts for desktop were adjusted. Improvements on repeated code in case of buttons are left for further work along with continuing view improvements.

What problems have been solved?

Small error fixes, understanding git specifics, resolving issues with Tailwind config- required removal of tailwind-css-rails gem and references to it in procfile. Conflict resolution skills in Git were improved and code readability was increased by wrapping long lines of code and ensuring adherence to DRY principles.

What technologies, tools or solutions have been used?

Tailwind, git, ruby, docker, CSS

Radek:

What functionalities have been delivered?

Radek improved the appearance of the app and added a centering functionality for maps when the user is adding a marker. He also improved the format of displayed addresses and their responsiveness when searching via autocomplete. Changes were made to how the model for the walk was structured. Furthermore, Radek created a validator for creating a walk and adjusted the format of incoming coordinates from the front end.

What problems have been solved?

Radek found and fixed an error in the admin panel and confirmed it didn't cause further issues. Initially, he addressed a problem of double markers being added, later realizing some were tripled; however, this was resolved the next day. The changes also ensured markers no longer multiply. Furthermore, Radek refined how everything would be retained in the database.

What technologies, tools or solutions have been used?

avo, tailwind, stimulus, leaflet, openrouteservice, activerecord, rspec, rails

Mariusz:

What functionalities have been delivered?

Mariusz successfully implemented changes to the door structure drawing architecture and introduced the Overall and Frame categories of the drawing batch. He also made considerable progress with the feature for calculating the price per construction and frame surface area. In addition, he added an option in the selectors for the door group dimensions to restrict the possible measurements based on the total height of the construction. He improved the calculations for the price per frame surface area and construction. Fixing a mistake that was made when calculating the height of the construction in the canvas drawing, he sent his work to the staging area for testing. Furthermore, Mariusz fixed a bug related to displaying attachments available for cloned relational objects of a product when the attachment has been deleted from another product (which is a clone). He also introduced a block on price inputs and radio buttons for selecting their type when the current step of the admin wizard deals with an aspect defined in the constants as aspect_without_price.

What problems have been solved?

Problems with the implementation of getters and setters were solved, as the class variables built in the constructor should not have the same names as the getters and setters. A significant issue was found with the attachment display for cloned relational objects of a product, which was fixed by introducing an additional operation in the cloning service. Troubles associated with selecting the door group's dimensions which affects the total height of the construction were also addressed.

What technologies, tools or solutions have been used?

stimulus, rspec, StimulusReflex, Shrine, Tailwind

Arkadiusz:

What functionalities have been delivered?

The programmer has delivered several functionalities. Specifically, he has made it possible to input values into the table structure of sold items, including the minimum, maximum, and average price, as well as size. It is also possible to recalculate these values based on the price list. He added feature reset checkbox values in the sales section when creating a new historical version. A functionality has also been introduced to block the possibility of adding new phases in finished investments. While the application work on learning microservices progresses, initial pseudocode has been created to guide the development process.

What problems have been solved?

Several issues were addressed. Integrating the checkbox functionality into the existing mechanism posed a challenge due to the NOT NULL constraint, thus a separate array was used. In-depth discussions were held on applying the Boolean on the checkbox and the select in the logic with the possibilities of NULL values. An issue with the change of sale dates in the new historical version of a unit was addressed. The problem was likely linked to the price list addition. The solution for the issue of adding new phases in finished investments resulted in being able to visually conclude investments. Finally, the proper connection of Tailwind to the application was managed with significant help in understanding dependencies, utilization of button_to and link_to, and log digging.

What technologies, tools or solutions have been used?

ActiveRecord, ActiveRecord::Migration, CoffeeScript, JS, haml, ActiveAdmin, Pundit, ssh, scp, Chipmunk, pry, devise, tailwindcss

Marcin:

What functionalities have been delivered?

The date of the offer's end in the restaurant has been quickly changed, which was just a text change. Additionally, the content of the return policy on the website under the help section and in the email confirming the order has been edited.

What problems have been solved?

There was a problem with locating the content from the help section within the project. Once located, the old record has been hidden so it would not be deleted, with a new record added in the same place. An obstacle was also encountered when trying to alter the contents of the confirmation email - the text couldn't be found within the project to be updated. Access to SendGrid to modify the email's content was granted, but a two-step verification was required to log in. The code provided was no longer valid when it was attempted to be used for access, a further attempt to gain access will be made.

What technologies, tools or solutions have been used?

ruby, rails, docker-compose, sendgrid, mailchimp

Maciej:

What functionalities have been delivered?

Maciej successfully implemented functionalities related to Pundit (policy regarding the use of admin and user). The policy was carefully incorporated into the appropriate segments of the code. The issue concerning username change error was resolved. When a folder was deleted, it was impossible to rename it - however, this error was fixed as well. He also introduced an adjustment concerning layout changes and checkboxes. Lastly, he spent some time figuring out subscriptions, although more conceptual information is necessary on this aspect.

What problems have been solved?

Maciej successfully solved problems with name changing, implemented policy into numerous segments in the code, modified the checkbox layout, and added a fix to the folder renaming issue.

What technologies, tools or solutions have been used?

Shopify, Spina, Pundit, RSpec, Stub

Read more on our blog

Check out the knowledge base collected and distilled by experienced
professionals.
bloglist_item
Business

Ruby is great. Python is also great. C# and java are obviously great too.
Even PHP can be great.

So why so many companies struggles with projects written in those languages?
And more important...

bloglist_item
Business

Since I helped about 50-60 people to start their journey with Ruby and I still have to answer for the same questions like
- "What do people find attractive about ruby language?"
- "What is it d...

bloglist_item
Business

INTRODUCTION

In the first part of the cycle, we talked about initial estimations (in our case project concept) and characteristics o...

Powstańców Warszawy 5
15-129 Białystok

+48 668 842 999
CONTACT US