In this article we explore the behavior of auto_now, auto_now_add and default, in the context of the usual created_at and updated_at timestamps, that we add to our Django models.
As 2022 is coming to its end, it is time to sit down and reflect on the past year.
With all the craziness going on, we thought it would be a good idea to appreciate all our achievements, big or small, and just be grateful for everything that happened.
It turns out, 2022 was a great year for us.
HackSoft is attending OpenFest 2022 as sponsors, with our own booth for the first time. Come and meet the team on the 15th and 16th of October at Sofia Tech Park.
Updating a QuerySet using an F expression is a common and very useful Django pattern.
In this article, we explore how to bring this pattern to a JSONField.
Behind any successful company stands a motivated team. We would love to introduce you to Ruzha Bobotanova. She is one of the newest HackSoft team members who joined us in 2021.
All of our projects have external dependencies.
It's a good idea to keep them up-to-date.
In this article, we'll show how we do it, using dependabot and GitHub Actions.
File upload tend to show up as a feature in most web apps.
In this article, we explore how to handle direct to S3 uploads with Django, where the actual file upload bypasses the Django backend.
Behind any successful company stands a motivated team. We would love to introduce you to Lina Savova. She is one of the newest HackSoft team members who joined us in 2021.
At HackSoft, we share ideas, knowledge and insights from our work.
In this article, you'll learn the practices and traditions that help us keep our expertise sharp.
Today is a special day, because we are celebrating our 8th birthday🎂
We play with an infinite mindset & we are here to stay.
Cheers to many more years and success!
For clients, software development might look like a very exotic ritual.
That's why, we want to shine a light on the entire process & explain what's happening.
Have you ever heard of a team that feels like a second family? HackSoft is a company created by such a team. In the following article, we explain how and why we contribute to making it so.
Behind any successful company stands a motivated team. We would love to introduce you to Anton Nyagolov. He is one of the newest HackSoft team members who joined us in 2021.
Working with dates, times, timezones and daylight saving times is never straightforward.
In this article we explore how to account for all of that, using Python.
The Django Styleguide is core to how we develop software, using Python and Django.
Now, it's time to reach outside of HackSoft and see how other people are using the Django Styleguide.
That's why we are conducting the Django Styleguide Survey.
In our work as web app developers we want to present the users with appealing loading screens while we are fetching data. In this article we'll be implementing a simple version of the "skeleton-screen" approach.
Submitting an app to TestFlight usually takes some unexpected time because of the approval process.
In this post, I'll walk you through the struggles we had due to a third-party sign-in.
For the first time, HackSoft has provided an opportunity for 11th-grade students at Technological School "Electronic Systems" (ELSYS, a.k.a. TUES) to experience a real working environment.
The ultimate platform for coworking and flex spaces needed a new members portal. We teamed up with the OfficeRnD engineers to fully rewrite it using React and a little Redux.
In this blog post, we will be focusing on building GraphQL queries with Python. I will guide you through the steps for building a complete GraphQL query, along with pagination and filtering (using Relay mechanisms).
If we have a Django application and we are ready to release it to PyPI for others to use. But we need to make sure our manual tests are actually translated into automatic ones.
Nine people from the HackSoft team went to ReactNext – an annual React conference in Tel Aviv. The conference focuses on React and React Native which aligns perfectly with the tech stack we use in most of our projects.
As a non-technical founder, it can be challenging to get your product idea built & shipped to the end users. In this article, we explore different options & explain the software development process in details.
We love going to DjangoCon.This year was our second time. This was our second DjangoCon in a row. In this article, we share the talks that made us big impression!
We went to London for a week, to help the startups from the last PiLabs cohort with dev consulting. We talked about software & product with the main goal – add value & don’t waste their time. Read more about our journey and observations from the visit.
Renaming a key model in a huge Django application can be trickier than it seems. Tons of data migrations and halted feature development seem unavoidable. In this blog post, we share our alternative approach, avoiding most of the pain.
This article is going to be short in words, but plentiful in pictures. We did the so-called “corporate photoshoot”, thanks to Aleksander Kostov, and it turned out to be good. Say hi to the faces of HackSoft.
We decided to have an outlet, where we can talk about the everyday things that are happening at HackSoft, and share our point of view about the process of software development.
This outlet is HackCast.
HackSoft team was well represented during EuroPython 2018 in Edinburgh. Radoslav Georgiev, Martin Angelov, Ivaylo Donchev & Pavlin Gergov went to Edinburgh for the conference days of EuroPython and all gave a talk on different Python & Django-related topics.
In this article, we explore how to deal with the casing mismatch between the JavaScript world (using camel case) and the Python / Django world (using snake case) using neat mixins, in combination with Django and Django Rest Framework.
In this article, we’ll explore how to setup automatic prettier check on your continuous integration server, so that everyone on your team will follow the same frontend styling.
As a solutions company we use open source tools, languages and frameworks every day. It is an integral part of what we do and how we do it. That’s why we are set to support open source maintainers, contribute & create open source of our own.
Almost every Web application needs to use some third-party software. The problem we usually have to deal with is that third-party apps, like every other app, can return an error. The following article is going to show you how to handle those problems in a nice and neat way in Django with Celery.
In this post we are exploring how to integrate Google Analytics in a Django project in a configurable way, so we don't track page views & clicks while developing locally.