Pull to refresh

How to become an author

Basic gems list for profiling Ruby on Rails application

Reading time4 min
Even most of the experienced Ruby on Rails developers sometimes forgot about annoying mistakes they produce in the long development processes, like n+1 queries or lose a lot of time with some unexpected queries from nowhere.

Not all these mistakes can be avoided before the production, but at least you can try :)

Yes, that’s another list of forgotten or not so popular gems for the better development processes.
Let’s begin.
Read more →
Total votes 4: ↑3 and ↓1+2
Comments1

PHP Vs ASP.NET: How to Choose the Right One?

Reading time6 min
image

Are you a business owner looking for PHP web development services or ASP.Net development services, but unable to decide the right technology for your project? Are you looking for the pros and cons of ASP.Net and PHP to take an effective decision?  I have tried to make this task easy for you by comparing ASP.Net and PHP in a very simple way.

There are a number of articles and blogs available over the Internet with a large amount of information about PHP Vs ASP.NET. Unfortunately, most of these blog posts are biased and typically based on promoting one over the other.  

In this blog post, I have done an unbiased comparison between the two most popular technologies i.e. PHP and ASP.NET in today’s world. 

On one side, we have PHP, the world’s most used and popular technology on the internet with billions of dedicated PHP developers across the world. On the other side, we have ASP.NET, a Microsoft platform. Sometimes, it becomes quite difficult to have a clear decision about which technology (Php or Asp.net) should we prefer for our application or website development project? 

Here is an elaborative comparison guide that helps you figure out the best technology for your next web app development project. I can assure you that after reading this article, you’ll have a clear idea about which technology suits you better. Moreover, you can share your thoughts and feedback in our comment box. We welcome your positive feedback for appreciating our work. Also, I will be happy to hear from you if you want us to do some improvements to my article.    
Read more →
Total votes 12: ↑6 and ↓60
Comments4

Benefits of Microservices Architecture for Software Development

Reading time4 min
From Netflix to Amazon, Twitter, and many software giants, everyone has started adopting the all-new architectural pattern for software development — microservices. Microservices is an architectural pattern for software development that is a collection of small autonomous units, built around business units.
Read more →
Rating0
Comments0

Holographic Principle, new type gyroscope, information without light speed limit, teleportation of physical objects…

Reading time57 min
Warning

First, all the objects and theories described in this article have the status of hypothetical at the moment. That is, the holographic hypothesis and string theories have not been experimentally confirmed many.

Second, a fundamentally new type of mechanical gyroscope with six degrees of freedom is proposed for experimental verification (base) of hypotheses. Of the two and three degrees of freedom mechanical gyroscopes known to science, this is the last of the possible types with the maximum number of degrees of freedom in the holonomic system (GYRO_6DoF).

Third, with the advent of the experimental base — the tops of the physical pyramid, string theories, and the holographic hypothesis, which is actually the foundation of the future Theory of Everything, are temporarily removed from criticism until the moment of practical implementation of the experiment and measurements.


Abstract

Even people far from physics know that the maximum possible data transmission rate of any signal is equal to the speed of light in a vacuum. It is denoted by the letter «c», and this is about 300 thousand kilometers per second. The speed of light in a vacuum is one of the fundamental physical constants. The impossibility of achieving speeds exceeding the speed of light in three-dimensional space is a deduction from Einstein's Special Theory of Relativity (SRT). Usually, when it is argued that SRT prohibits the transmission of the information above the speed of light, an implicit assumption is made that there is no other way other than to «bind information» to a photon and transmit it. However, there is another way. The well-known physical hypothesis — the Holographic Principle (a modern and widely used tool in theoretical physics) points to an interesting phenomenon: “Phenomena taking place in three-dimensional space can be projected onto a remote screen without losing information” — Leonard Susskind “The World as a Hologram ”[p. 3].

image

Read more →
Total votes 34: ↑4 and ↓30-26
Comments127

Open Source Java library with stacktrace filtering, Silent String parsing and Version comparison

Reading time9 min
Over some time in different jobs, I came across a need for several utilities that I couldn't find available at the time. And I saw that I needed them several times over and over again. So I wrote my own small library that I found very useful. So I just published it as an open-source java library.

Here is the Github link

Javadoc online is available here

Also, this library is available on Maven Central. Here are the Maven artifacts (the version 1.5.1.2 is the latest at the time of writing of this article but might change in the future. To check for the latest version search for artifact «MgntUtils» at http://search.maven.org/):

<dependency>
     <groupId>com.github.michaelgantman</groupId>
     <artifactId>MgntUtils</artifactId>
     <version>1.5.1.2</version>
</dependency>

 <dependency>
     <groupId>com.github.michaelgantman</groupId>
     <artifactId>MgntUtils</artifactId>
     <version>1.5.1.2</version>
     <classifier>javadoc</classifier>
</dependency>

<dependency>
     <groupId>com.github.michaelgantman</groupId>
     <artifactId>MgntUtils</artifactId>
     <version>1.5.1.2</version>
     <classifier>sources</classifier>
</dependency>

Below is just a short explanation of what is there. The library comes with a nicely written (I hope) JavaDoc with a detailed description. So here is the list of features:
Read more →
Total votes 6: ↑6 and ↓0+6
Comments0

Quick reference of C++ value categories: Part 1

Reading time13 min

image

The goal of this quick reference is to collect in one place and organize information about value categories in C++, assignment, parameter passing and returning from functions. I tried to make this quick reference convenient to quickly compare and select one of solutions possible, this is why I made several tables here.


For introduction to the topic, please use the following links:


C++ rvalue references and move semantics for beginners
Rvalues redefined
C++ moves for people who don’t know or care what rvalues are
Scott Meyers. Effective Modern C++. 2015
Understanding Move Semantics and Perfect Forwarding: Part 1
Understanding Move Semantics and Perfect Forwarding: Part 2
Understanding Move Semantics and Perfect Forwarding: Part 3
Do we need move and copy assignment

Read more →
Total votes 14: ↑12 and ↓2+10
Comments0

The Future of Artificial Intelligence in the Education System: Everything One Should Know

Reading time4 min
image


Artificial Intelligence refers to the theory of computer systems or human-made robots programmed with performing tasks as humans, such as learning, generalization, and reasoning. With this ability, AI has become a significant part of human lives. Similarly, AI and the education & tutoring web solutions are inseparable from being observed by the astounding inventions enabling machines to mimic human roles.
Read more →
Rating0
Comments0

Use AI in marketing: Let’s get into the customers' mind

Reading time4 min
“Instead of using technology to automate processes, think about using technology to enhance human interaction.” ~ Tony Zambito, Lead authority in Buyer Personas.

Do you know ~ according to research, 93% of customers make purchase decisions based on visual appearance. Visual elements of your brand are the key deciding factors for a majority of potential customers.

Your logo, website colors, chatbot texts, etc all have an impact on the psychology of people who come across them. Some colors or features attract them and some make them leave your website instantly.

In this era, interactive features with the help of technologies like Artificial intelligence are enhancing such effects. AI has the power to add interactive elements to your presentation. This creates a connection between your company and its customers.
Read more →
Total votes 4: ↑3 and ↓1+2
Comments0

Install Powershell Module from Github Repository

Reading time2 min
Hi there!

The latest years Powershell started expansion to other platforms and now works on Windows, Linux, and MacOS (I even managed to start it on raspberry Pi Debian distro).

And nowadays the main way for installing modules is PowerShell Gallery but in some situations, it still convenient to install modules directly from the source (the main reason — the main PowerShell modules repo configured to MyGet or NugetServer).

And it can be painful to install Module from GitHub — you should download archive, find modules folder extract archive content and then copy module folder to the Powershell Profile directory.

Moreover — people like me don't want to create a separate repository for each module (yes, I like the Release-Flow approach) so download and extract only the modules you are like -it even more difficult.
Read more →
Total votes 11: ↑11 and ↓0+11
Comments0

How to Choose the Right 3D Printing Filament?

Reading time4 min
image

Are you ready to get started with 3D printing but just aren’t sure about what filament you’re using? You’re definitely not alone because with the multitude of different filaments out there it can really get complicated. You find yourself overwhelmed while you’re trying to research because it seems like everyone has a different idea of what the best option is and it can easily seem like you’re being pulled in different directions. So, let’s take a closer look at how you can make the right decision.
Read more →
Total votes 13: ↑10 and ↓3+7
Comments1

How to Implement Tinder Swipe Cards in SwiftUI

Reading time7 min
In June, we heard about SwiftUI for the first time — a totally new way of creating and working with UI elements in iOS and macOS (also iPadOS) apps. It felt like Christmas in the summer. It's new, it's declarative, it's sexy! And now, just a few weeks after iOS 13 has been released, we can start to use SwiftUI in all our projects. Let's learn how to use this amazing tool that Apple gave us, to create the classic Tinder-esque Swipe Cards.

In this article, I would like to show you how to achieve a Tinder-like card view and behavior (swipe to action), with just a few lines of code.

To achieve this, we need to do the following things, in order:

  • Create UserView
  • Create NavigationView
  • Create BottomBarView
  • Create SwipeView
  • Put all this together inside ContentView

So let's get started.
Read more →
Total votes 7: ↑6 and ↓1+5
Comments0

AHURATUS Smart Home Voice Assistant

Reading time7 min

N|Solid


N|Solid


AHURATUS Smart Home Voice Assistant


Developed by Ehsan Shaghaei
Innopolis University
AHURATUS Scientific Club.

STM32F103ZET6 UNIVERSAL BOARD


Introduction


AHURATUS Smart Home Voice Assistant is an IOT device developed in order to control other home devices by voice detection. Note: This device is made ONLY for academic purposes.


Approach


Description


"AHURATUS Smart Home Voice Assistant" uses an ARM Cortex-M3 process for running the instructions as well as several peripheral devices in order to decrease the complexity of data bus and RF-Circuit calculations.


Bill of Materials


# Component Name Role Technical Document links
1 STM32F103ZET6 Process and Control Datasheet
2 HC-05 Bluetooth Module Bluetooth Radio Connection Datasheet
3 220-5V AC-DC Adapter Powering the circuit Datasheet
4 LED or Mosfets or Relays To System Output Datasheet
Read more →
Total votes 14: ↑14 and ↓0+14
Comments1

How did the test task become a production library

Reading time5 min
Hello everyone!

Today I'm going to tell about how is test task to job interview became the library Image Comparison. It's an open-source library, which is hosting on GitHub.

logo

Before I start, let me introduce myself. My name is Roman. I'm a husband and father. I'm a software engineer in Epam Systems with 4 years of experience in IT.

The main idea of this topic is to tell, that creating an open-source product it's not wasting time, no! It's an amazing experience, which is going from all the open-source community. It's a time when you're a developer, project manager, product manager in one head.

While this library is growing I have been working with people from more than 10(!!) countries, such as the USA, Germany, Chine, India, Russia, Ukraine, etc.

Let's move on from the start of this story…
Read more →
Total votes 5: ↑5 and ↓0+5
Comments0

Vue.js Is Good, But Is It Better Than Angular or React?

Reading time3 min
Vue.js is a JavaScript library for building web interfaces. Combining with some other tools It also becomes a “framework”. Now, from our last blog, you already know that Vue.js is one of the top JavaScript frameworks and it is replacing Angular and React in many cases. This brings in the topic of this blog ‘Vue.js is good, but is it better than Angular or React?


In case you’ve never heard or used Vue.js before, you are probably thinking: Come on! yet another JavaScript framework! We get it. However, Vue.js is not new in the custom software development domain. It was first released in 2013 and now it has 130549 stars on Github and downloaded a number of times this year.
Total votes 22: ↑19 and ↓3+16
Comments6

Python vs JavaScript: Which One Can Benefit You The Most?

Reading time10 min


The web development arena is moving at a fast pace and has reached an advanced stage today. Python and Javascript making some significant contributions for almost three decades. Now, being a developer or a business if you are planning to pick one of these, then it’s going to be tough just because both are too good to avoid. Hence, this brings up the topic ‘Python vs JavaScript: Which One Can Benefit You The Most?’

These two languages are supported by various trending web frameworks and libraries which are the real game-changers. The introduction of these frameworks and libraries to the web ecosystem has brought new paradigms, traditional notions, and standards of software development.
Read more →
Total votes 12: ↑10 and ↓2+8
Comments3

How to Write a Smart Contract with Python on Ontology? Part 1: the Blockchain & Block API

Reading time5 min
image

This is an official tutorial published earlier on Ontology Medium blog
Excited to publish it for Habr readers. Feel free to ask any related questions and suggest a better format for tutorial materials

Foreword


In this article, we will begin to introduce the smart contract API of Ontology. The Ontology’s smart contract API is divided into 7 modules:


In this article, we will introduce the Blockchain & Block API, which is the most basic part of the Ontology smart contract system. The Blockchain API supports basic blockchain query operations, such as obtaining the current block height, whereas the Block API supports basic block query operations, such as querying the number of transactions for a given block.

Let’s get started!

First, create a new contract in SmartX and then follow the instructions below.

1. How to Use Blockchain API


References to smart contract functions are identical to Python’s references. Developers can introduce the appropriate functions as needed. For example, the following statement introduces GetHeight, the function to get the current block height, and GetHeader, the function to get the block header.
Read more →
Total votes 20: ↑18 and ↓2+16
Comments0

Learn Bootstrap Fast With These 10 Helpful Tips

Reading time5 min
If you want to start your career in web development then learning Bootstrap is the way to go. Bootstrap is basically a framework used for front-end development of web apps. Its front-end component library is widely used to create interactive and responsive web apps and websites that we are used to today.

If you don’t already know, you must be wondering what responsive websites are? In simple terms, the responsiveness of a website means that when the size of the screen on which the website is being seen changes, the layout of the website responds to that and change. This makes the websites look good no matter what screen size it is being viewed on.

How does Bootstrap work?


There are two ways you can use Bootstrap. You can either import the Bootstrap into your code or you can download a sample Bootstrap project and build your website on that.

Bootstrap uses a 12-column model for website display, which is called a Bootstrap grid. On this grid, you can define different breakpoints to layout different components like headings, paragraphs, and buttons to make your website look visually appealing. When the screen size scales down, the components on the grid change layout to fit the smaller screen. This means that viewing the same website looks great on a normal size screen of your laptop and a smaller screen of your smartphone.

Bootstrap has become one of the most popular front-end development frameworks today. If you are a beginner who wants to start learning Bootstrap then you are on the right blog. Because here are the top 10 tips to learn and master Bootstrap!
Read more →
Total votes 18: ↑16 and ↓2+14
Comments0

Suspending over blocking

Reading time9 min

This article aims to show how to use Kotlin Coroutines and remove Reaxtive eXtensions (Rx).


Benefits


To start let's consider four benefits of Coroutines over Rx:


Suspending over Blocking


To run non-blocking code using Rx you'd write something like this:


Observable.interval(1, TimeUnit.SECONDS)
    .subscribe {
        textView.text = "$it seconds have passed"
    }

Which is effectively creating a new thread. Threads are heavy objects in terms of memory and performance.


Both are critical in the mobile development world.


You can achieve the same behavior using the following snippet:


launch {
    var i = 0
    while (true){
        textView.text = "${it++} seconds have passed"
        delay(1000)
    }
}

Essentially, Coroutines are light-weight threads but we don't create any real thread.
Here we are using non-blocking delay() function, which is a special suspending function that does not block a thread but suspends the Coroutine.

Read more →
Total votes 7: ↑6 and ↓1+5
Comments3

Vue.js Best Practices For Web Development

Reading time5 min

I am a full-stack developer at Syncrasy Tech (IT solutions company). I love writing React codes. But why I am telling you this as we are here to discuss the Vue.js best practices for web development. I am telling you this so that you can understand my background and why I’m discussing here the Vue.js.


I love working on React codes, but I hate reading them. This is the reason where I fail to code. Even with the best code review practices, I can’t figure out the nesting of React components that simply helps to create more complex UI structures in web apps.


The solution to this problem is Vue that is now not so new in the block of web app development. I have heard a lot about Vue async components, server-side rendering, tools, and libraries. Perhaps you find this myriad of terms to be confusing. Believe me, you’re not alone in that, many developers of all levels feel the same way when they don’t know the Vue best practices.


A few days later, I finally decided to get my codes into it. What I am sharing here are the numerous best practices that I have learned through my experience with Vue. I’m ready to share what I’d find.

Read more →
Total votes 3: ↑3 and ↓0+3
Comments0

Tips And Tricks For Conducting A Successful Mobile App A/B Test

Reading time4 min


As per the latest stats reveal, there are more than 2.7 billion smartphone users globally and over 2.8 million apps on Google Play Store.


Now, it's a fact that the number of mobile users is increasing at outstanding speed, and so is the name of apps on Google Play Store.


But does all the apps success to make a difference? No, but just a handful of having stood out and gain popularity.


For instance, there are several games on the Play Store, but why only Candy Crush, Subway Surfers and Angry Birds topped the charts while the other games struggle for even ten downloads.


The trick is to provide the players with what they want, and in turn, the response for such apps is tremendous.


However, at this point, when the competition is very high, it's challenging to come up with something new that can stand out from the crowd.


It's crucial to create a brand name so that people can talk about it.

Read more →
Total votes 9: ↑9 and ↓0+9
Comments0