Pull to refresh

Development

Show first
Rating limit
Level of difficulty

The Project «Fabula»: How to find the desired video-fragment or person in a pile of video files?

Reading time2 min
Views1.7K
If a person is far over 20, then he has already accumulated a huge film library of his life, as well as videos from friends, relatives, and from his place of work… It is no longer possible to find someone or something specific there. Recently, I was preparing a video compilation for my daughter's anniversary – I spent a week. The media is all the more overloaded with video archives. And every day, millions of terabytes of video content appear in the world. And this is in the era of BIG DATA.

image
Read more →

Under the Hood of PVS-Studio for Java: How We Develop Diagnostics

Reading time8 min
Views461

To keep it interesting, this time I'd like to tell about our approach to developing and polishing diagnostic rules for PVS-Studio Java. You will learn how we keep existing warnings consistent across releases and why the new ones aren't too weird. I'll also share a bit of inside information on what plans we, the Java team, have for the future, and show you a few interesting (and a few plain) bugs we found using the diagnostics from the upcoming release.
Read more →

Static Analysis: baseline VS diff

Reading time6 min
Views1.3K
If you use static analyzers, you will have, sooner or later, to address the task of making their integration into existing projects easier, where fixing all warnings on legacy code is unfeasible.

The purpose of this article is not to help with integration but rather to elaborate on the technicalities of the process: the exact implementations of warning suppression mechanisms and pros and cons of each approach.

image1.png

Read more →

Spring transaction management. Isolation and propagation

Reading time3 min
Views29K

Introduction


In my opinion transaction management is a really important topic for each backend developer. In general, people don’t pay attention to it while using Spring framework.


But I think, it is important to know how to use transactions properly. Because sometimes can happen that there was an exception thrown inside your method, but transaction was not rolled back and it is not clear why? Or some other “strange” cases.

Read more →

Lossless ElasticSearch data migration

Reading time5 min
Views4.2K


Academic data warehouse design recommends keeping everything in a normalized form, with links between. Then the roll forward of changes in relational math will provide a reliable repository with transaction support. Atomicity, Consistency, Isolation, Durability — that's all. In other words, the storage is explicitly built to safely update the data. But it is not optimal for searching, especially with a broad gesture on the tables and fields. We need indices, a lot of indices! Volumes expand, recording slows down. SQL LIKE can not be indexed, and JOIN GROUP BY sends us to meditate in the query planner.

Read more →

Boot Ubuntu via http/ftp server with pxe(diskless boot)

Reading time5 min
Views23K

Intro


PXE is a great solution for booting a diskless computer (or a computer without an OS installed). This method is often used for terminal stations and OS mass installation.


Stock ubuntu (16.04) in pxe-mode can mount rootfs only from NFS. But this is not a great idea: any difficulties with the network/NFS server and the user gets problems.


In my opinion, it's best to use other protocols, such as http/ftp. Once booting, you will have an independent system

Read more →

Here are the Most Popular Video Conference APIs To be Considered for your Mobile App

Reading time8 min
Views21K
As the world rearranges into virtualized societal norms, the most convenient and simplified interaction for businesses or socially has come from video-based apps. Extensive use of these conferencing apps is trending Post COVID-19 pandemic.
Statista.com has tracked the high number of video conference app downloads from AppStore and GoogleStore for the following
:
Video conferencing App / Country Hangouts Meet Houseparty Ms Teams Zoom
USA 30 8 11 4
France 23 30 16 2
Germany 15 26 11 17
Spain 64 2360 15 27
Italy 140 423 30 55

Read more →

The Testcontainers’ MongoDB Module and Spring Data MongoDB Reactive in Action

Reading time19 min
Views5.6K

1. Introduction


How can I easily test my MongoDB multi-document transaction code without setting up MongoDB on my device? One might argue that they have to set it up first because in order to carry out such a transaction it needs a session which requires a replica set. Thankfully, there is no need to create a 3-node replica set and we can run these transactions only against a single database instance.

Read more →

C2x: the future C standard

Reading time8 min
Views17K

image


I strain to make the far-off echo yield
A cue to the events that may come in my day.
(‘Doctor Zhivago’, Boris Pasternak)

I’ll be honest: I don’t write in pure C that often anymore and I haven’t been following the language’s development for a long time. However, two unexpected things happened recently: С won back the title of the most popular programming language according to TIOBE, and the first truly interesting book in years on this language was published. So, I decided to spend a few evenings studying material on C2x, the future version of C.


Here I will share with you what I consider to be its most interesting new features.

Read more →

PVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agents

Reading time12 min
Views735


Static code analysis is most effective when changing a project, as errors are always more difficult to fix in the future than at an early stage. We continue expanding the options for using PVS-Studio in continuous development systems. This time, we'll show you how to configure pull request analysis using self-hosted agents in Microsoft Azure DevOps, using the example of the Minetest game.
Read more →

Top 10 Kotlin App Development Companies 2020-21

Reading time10 min
Views3.4K
image

Kotlin is a JVM compatible & Java interoperable language that is the most-encouraged language by Google for developing Android apps & production-grade systems. According to Snyk, over the last few years, Kotlin has gained a huge user and developer base for robust, and secure app development.

The user-base has been shifted from 2.4% to 5.4%, that is a growth of 130% in the user population. This population growth and increment in its usage has made it the second most popular JVM language, that is quite surprising.

The reason for Kotlin application development is its 100% interoperability with Java. Around 7.78% of the world developers use Kotlin as their primary coding language. According to insights.dice- Kotlin is used 96% for new projects and 36% for migrating applications from Java to Kotlin. You can use it directly with Java code to make it more efficient, and it works concurrently or without any issue.

image

Many benchmark android applications of startups to moonshots have been built using Kotlin. Various startups and brands like EverNote, Twitter, Netflix, Slack, American Express, Airbnb, Adobe, and many others from different industry verticals opted for Kotlin app development.
Read more →

IntelliJ IDEA: Structural Search and Replace

Reading time11 min
Views7.8K

Modern IDEs are very powerful tools that can help developers in all kinds of situations. Unfortunately, much of this power is often lost because many functions remain unknown to developers, hiding in the shadows.


Simple example of the one of the such functions

Did you know that when you press F2 in IntelliJ IDEA, the cursor will jump to the nearest error in the file? And in the absence of an error – to the nearest warning? It seems that this is a secret only a few people know about.


Structural search and replace is one such pair of features. They can be extremely useful in situations where a whole variety of other functions can’t quite get the job done.


In this post, I will present some of these situations and go beyond artificial cases by demonstrating examples of real code from two projects:


  1. 3D-engine for game development, jMonkeyEngine, which is an example of a big, interesting project.
  2. My own pet project, plantuml-native-image, where I experiment with compiling PlantUML into native executable code using GraalVM Native Image.

In fact, it is this second project that encouraged me to write this post but I’m getting ahead of myself. First things first...

Read more →

Small things that pollute your code

Reading time4 min
Views2.4K
I'm not going to discuss global things like design patterns and so on, as there's enough literature on that topic. Instead, I'd like to attract your attention to some small things that still affect lucidity and maintainability of a code.

Polluting code with 'test-only' methods or access modifiers


First of all, if you give access to something that shouldn't be used in production code, it gets used sooner or later. Just because it exist. The argument that it's an internal stuff doesn't work as it absolutely shouldn't be matter, writing you a library or isolated project! Treat people who will add anything to your internal codebase the same way as if they use your existing code as a different library.

Thus, if for some reason in test, you need to call something that should not be called on prod — use reflection or whatever else but do not expose it in production code! And there's no reason to afraid of reflection for test proposes, at the end, you using Mockito, shouldn't it be bad in that case as well?
Read more →

Hire PHP Developers: Cost & Procedure

Reading time5 min
Views1.3K
image

PHP has surely become the most ubiquitous language for the world today. Being around for a while, PHP is ruling the market, with expectations to dominate for years to come. Therefore, irrespective of the size of a business, PHP remains the first choice to get a sturdy and customizable website created.

However, It is important to understand that PHP is an art (Scripting language), you need to hire an artist (developer) to yield the best from it.

Choosing the best from the pool of more than 5 million PHP developers is a tedious task. Even more when you’re a noob into this industry. Apart from language skills, there are multiple other factors, such as budget, skills, experience that influence the decision to hire a particular remote PHP team.
Read more →

PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerCoaster Tycoon 2 project

Reading time8 min
Views673

One of the most relevant scenarios for using the PVS-Studio analyzer is its integration into CI systems. Even though a project analysis by PVS-Studio can already be embedded with just a few commands into almost any continuous integration system, we continue to make this process even more convenient. PVS-Studio now supports converting the analyzer output to the TeamCity format-TeamCity Inspections Type. Let's see how it works.
Read more →

Free CRM with PBX

Reading time3 min
Views2K
Why do you need a CRM system? Well, it’s at least more convenient than keeping your client database in Excel. Why do you need CRM with VoIP? If you have ever interacted offline, you know you cannot do it without telephony (orders, delivery, support etc.).

But what prevents 80% of companies from trying out a CRM tool? If prices is the matter, we are offering a free CRM system integrated with the phone system and free PBX.

To anticipate questions about installation difficulty, CRM setup and contact import doesn’t take more than 5 minutes.


Read more →

Beyond the “contact tracing” app

Reading time5 min
Views814
As a mathematician, it amazes me how much computing power fits on our mobile phones today. Like other «Gen Z» digital natives, I grew up watching people dream up and build technologies that have transformed our social lives, work lives and everything in between.

Yet in a time when humanity desperately needs innovation more than ever, the application of mobile technologies in the fight against COVID-19 has been weak and fragmented. We have technology literally at our fingertips that could be utilized to help us through this pandemic, but governments around the world have barely managed to develop even a contact tracing app.

image
Read more →