Code Review: Create The Culture, Learn The Best Practices

// // by Gábor Zöld

Code review is one extremely powerful tool in a developer team’s arsenal, yet it’s often neglected or used in a way that leads to toxic behavior, causing more harm than good. Code reviews done right can help your team share knowledge, which helps with mentoring interns and juniors tremendously, but experienced developers can always improve as well.

Technology

Technical Debt: Everything You Need to Know, and How to Manage It

// // by Gábor Zöld

Technical debt is an issue for everybody in the industry. Clients often don't even know, how much money it costs, but all developers know how much effort it takes to work with it. We put together a comprehensive guide on tech debt: everything you need to know about what it is, and how to prevent and manage it.

Technology

Top Programming Languages 2019: Python, Go and TypeScript Keep Rising

// // by Gábor Zöld

Every year, we at Coding Sans take a snapshot of the current state of software development. This year we had doubled the participants, so we have an even more precise insight on the trends for the top programming languages of 2019. Let’s look at the data, and see what trends are emerging.

Technology

How to Build Large-Scale Enterprise Angular Applications

// // by Bálint Mérő

How to design, implement and maintain a Large-Scale Enterprise Application in Angular.

Technology

Configure Frontend Projects with Dotenv

// // by László Csele "Lacka"

Handling secure data (such as API keys) in any project’s repository is a crucial part. In previous years, I came across many approaches to resolve this issue. Some of them did a pretty great job, but others didn’t resolve it at all. 

In this post, I’ll show you step-by-step how to configure frontend projects using dotenv with .env file, dotenv and convict npm packages. This configuration works with any frontend app that use webpack to bundle the application.

Technology

Case Study: GPU Orchestration Using Docker

// // by Péter Esztári

GPUs are getting more and more memory and compute capability nowadays. This is super good news if you are using them for HPC (high-performance computing), but some workloads may only require a fraction of a card. This is the point when GPU orchestration comes in the picture.

Technology

Top Signs You Need a Non-Relational Database

// // by Oren Eini

Today’s data is coming in at speeds and substances we’ve never before seen. Systems designed during the days of disco are being used to handle petabytes of information in real time. Much like the Bee Gees, these systems are out of touch with the demands of today. If simplicity, scalability, agility are important for your database then you might need a non-relational database.

Technology

Serverless Mobile App Development with Ionic and Firebase

// // by Anton Ivanov

When you’re looking to build an MVP and later a production mobile app as a small team, the task at hand may seem daunting. You’ll obviously want to focus on the actual mobile app design and the UI, which by itself is no small feat. On top of that, you’ll need to figure out how to develop and release the app for both iOS and Android platforms. This is exactly the situation I faced as a solo-founder and developer of DealCheck – a cross-platform app that helps real estate investors analyze potential properties to buy.

It would have been impossible for a one-man team to build and release an iOS, Android and online application without leveraging existing technology-as-a-service solutions, which can drastically speed up development and allow small teams to accomplish big projects.


Technology

Redirect Users Based on Browser Language with [email protected]

// // by Mohamed Labouardy

In this post, I will walk you through how you can use AWS [email protected] feature to redirect website visitors based on their browser language.

Technology

Monolith to Microservices: 6 Signs Your Service Is a Jenga Tower

// // by Patrick Lee Scott

"I’d really like to make this change, but I’m afraid to, because I have no idea how that will affect the rest of the system.” If you’ve ever felt this way - most of us have at one point or another - it’s likely that the code you are working on is basically a Jenga tower. Pulling out one block could cause everything to come crashing down! It’s a typical situation when it comes to refactoring your architecture from monolith to microservices. Here are 6 signs your code base is like a Jenga tower!

Technology

5+ Reasons to Use Selenium with Docker for Application Testing

// // by Suraj Vijayaraghavan

Application testing is a key element to make sure your web applications run smoothly, as it tells you whether the tested scenario works without a hitch and the features run as validated. High test coverage, code reviews and pull requests are required for a fast pace and high-quality code. Docker gives you the best of this because you can run your tests in containers or isolate them in development and deployment.

Technology

The Serverless Security Conundrum: Who Manages Security?

// // by Tal Melamed

The idea of ‘serverless’ is NOT about removing the servers completely (or you couldn’t use the internet at all), but essentially paying for services that mean that someone else manages the servers for you, thereby reducing maintenance load…

Not having access to the server can make things harder, but not impossible. And it’s not necessarily wrong, just different.

And the same applies to securing serverless apps. In some ways, it’s easier than securing traditional web apps. In other ways, it’s harder. And in yet other ways, it’s merely different. 

In this post, we’ll summarize these key differences and help you  secure serverless apps.

Technology

How to Use AWS Lambda to Cleanup Unused EBS Volumes

// // by Mohamed Labouardy

One of the main benefits of using serverless is automation due to it’s event-driven and pricing models. In this post, we will walk through how to use AWS Lambda to cleanup unused EBS volumes to reduce the infrastructure’s monthly bill.

Technology

Testing Distributed Systems: Case Studies from the Pros

// // by Tamás Török

Figuring out how to test complex, distributed systems causes a lot of headaches. And the thing is, there is no one-size-fits-all answer. Distributed systems serve a specific need, so its architecture is built in a way to serve that business need. Chances are, the testing methods vary as well, and I haven’t even mentioned the number of independent services that also influences the testing methodology. 

Since it’s impossible to come up with a universal answer for testing distributed systems, we did interviews with 6 cool tech leaders to reveal their methods of testing. 

In this post, they will talk about how their systems work and the methods they use to test them.

Technology

Switching to a Microservice? Read this first

// // by David Dawson

microservice architecture is an interesting beast, as there is no real prescriptive definition of what makes one that is universal in nature. In my view a software architecture is much more akin to a form of software philosophy than any engineering discipline. In this post, David reveals his process for switching to microservices.

Technology

Serverless Apps: The Most Important Things You Need to Know

// // by Péter Esztári

Building serverless apps or setting up a serverless architecture has been a pretty hot topic in recent years. But seeing if this is the right fit for your application is not that clear. In this post, we compressed every information you need to know about serverless applications, collecting the pros and cons to make your architectural decision much easier.

Technology

Microservice Architecture: All the Best Practices You Need to Know

// // by Tamás Török

Switching to a microservice architecture seems easy, but tech leaders tend to underestimate the complexity of the project and make disastrous mistakes. Before transforming your monolithic system into microservices, or starting one from scratch, you need to carefully consider the technological and organizational challenges that will arise.

Technology

NoSQL vs Relational Database File Storing (MongoDB and SQL Server Comparison)

// // by Barna Burom

When you as a software developer start examining a new project’s specifications that just arrived at your team, you start planning the architecture. Every application uses data handling and storing, so you will need a database. Nowadays, there are tons out on the market, so you can become confused with which one to choose. Well, it highly depends on what your soon to be app is about. In this blog post, we will discuss the opportunities of file storing with relational and NoSQL databases through the comparison of MongoDB and SQL Server.

Technology

How to Develop a Cordova Android Plugin

// // by László Csele "Lacka"

I decided to make a plugin, which is more advanced than showing just a native toast message on a device, so I chose the acceleration sensor access from a cross-platform app. In this blog post, I show you how to develop a native Cordova plugin for Android.

Technology

How to Easily Set-up Node Config Following These Best Practices

// // by Ákos Szokodi

When building any kind of server side app, you will eventually have the following thoughts:

  • I would like to bind my app to a specific port.
  • I would like to enter a connection string so I can connect to my database.
  • I would like to use a third-party service through a provided API key or credentials.

Given values to these kinds of parameters will yield a configuration. It is a crucial part of the system as our application will have lots of configurable elements, so it must be handled properly throughout the codebase.

In this article, we will look at the DOs and DON’Ts of Node config handling.

Technology

Beginner’s Guide to Serverless Architecture (Config, Deploy, Advantages)

// // by Dániel Vincze “Vinő”

Serverless is a software architecture where the code runs in the cloud but we don’t really know the OS and the hardware it uses. Everything is managed by the provider except the functions we upload.      

Serverless is not just an architecture. It is also a powerful framework we can use to develop and deploy serverless applications. After reading this guide, you will be able to deploy infinitely scaling NodeJS web application in minutes. Other supported languages are Java 8, Python 3.6 and 2.7, .NET Core 1.0.1 (C#)

Technology

Mongoose + TypeScript: Define Mongoose Models Using TypeScript Classes

// // by Ákos Szokodi

As a Node developer, chances are that you've already encountered with both Mongoose, and ODM (Object Document Mapper) library helping you connect your app to a MongoDB and TypeScript. A common problem however when using Mongoose with TypeScript is that you have to define both the Mongoose model and the TypeScript interface which leads to redundancy. Finally, here is a guide to overcome this challenge.

Technology

Node 8: Five New Features You Need to Know

// // by Ákos Szokodi

Node 8 is out on May 30th and packed with new ES features along with performance improvements. Version 8 is important as later this year (in October) Node 8 will be LTS, so it's worth checking out its new features compared to the previous LTS (v6) and the previous stable (v7) release. In this post we collected every new features you need to know.

Technology

20 Easy-to-use Mockup Tools to Design Your Next App

// // by Tamás Török

Sketching up the frames of your app is a great way to make it a bit more realistic. This is a step that can’t be avoided when building any kind of application.

But, you can take this to the next level. 

Using some of the tools mentioned below, you can create even interactive mockups that can be exported and run on any device working like a real application or a prototype. 

This is an efficient way to test your assumptions about your app; it also provides detailed instructions for developers, making their job much easier and faster. 

Technology

Comprehensive Guide to Code Quality: Best Practices and Tools

// // by Tamás Török

Ensuring code quality when your software team is growing rapidly is a huge challenge. But even with a constant number of software developers, maintaining code quality can cause headaches.

Without tools and a consistent system, the whole project can accumulate a huge technical debt, causing more problems in the long-term than it solves in the short-term.

The best thing is that you don’t have to be a rocket scientist to avoid this (sure, it’s not a problem if you are one).

Technology

How to Build an Ionic 2 App with Native Plugin Integrations [Full Guide]

// // by László Csele "Lacka"

I’m really excited about the new Ionic 2 framework, which was recently released. They switched AngularJS version to Angular version 2. After reading many posts about the new features and digging into the Ionic docs, I decided to make a simple app with some native plugins (Camera, Google Maps and GPS Location). In this post, I show you how to integrate the most requested native features with Ionic 2 framework and create a cross-platform application.

Technology

The Best Slack Integrations for Distributed Software Teams

// // by Tamás Török

We know that frequent communication and great tools are necessary to successfully manage software development. It is bad for your project when communication takes place in many different channels while not using (or using too many) tools to track progress and manage code. These are the typical symptoms of a falling-apart project. And I’m sure you want to avoid them.In this post, I show you 8 Slack integrations that will save time, make the project more transparent and make everyone accountable for his task.

Technology