"Microservices," the way it stands, is becoming a must-have for a lot of enterprises. It is being touted as the main component if you are leading a digital transformation journey. System integrators are having a field day calling themselves microservices experts. At the end of the day, 90% of implementations are going to fail. Why?

Because microservices by themselves are not the silver bullet. It is excellent armor, but by no means the only piece that you need to convert your legacy monolith — which, by the way, has seen the business grow leaps and bounds — into a lean, modern microservices architecture which will make your digital transformation journey successful. It is going to ruin a lot of C-level reputations.

Source de l’article sur DZONE

Choosing the right approach to managing a project is crucial for successful project delivery. The way you manage work is defined by techniques that you use and the tools that you adopt. In this article, we’ve collected project management tools and techniques that are used in different fields and help create an efficient process.

Project Management Techniques

Techniques in project management range from traditional to innovative ones. Which one to choose for running a project depends on project specifics, its complexity, teams involved, and other factors. Most of them can be used in various fields, however, there are techniques that are traditionally used in certain areas of activity, or are developed specifically for certain fields. Below, we’ve listed the most popular techniques that are used in project management.

Source de l’article sur DZone (Agile)


How To Make Your Scala Applications Compile Faster

With Scala, JVM developers get a host of benefits over other programming languages. From code conciseness (fewer LOC) and native scalability to support for functional programming paradigms and type safety, Scala is the language of choice for modern enterprises like Amazon, HPE, PayPal, and Walmart.

Source de l’article sur DZONE

I can’t actually share all the code. So this feels incomplete. But I can share what I said about the code. Then you can look at your code and decide if you’ve got similar problems to fix.

My responses were these. I’ll expand on them below.

Source de l’article sur DZONE

In this episode, you will learn the basics of Python decorators and what the are good for.

You can read the chapter this screencast is based on here: http://python101.pythonlibrary.org/ or purchase the book on Leanpub

Source de l’article sur DZONE

When writing unit tests, it is common to initialize method input parameters and expected results in the test method itself. In some cases, using a small set of inputs is enough; however, there are cases in which we need to use a large set of values to verify all of the functionality in our code. Parameterized tests are a good way to define and run multiple test cases, where the only difference between them is the data. They can validate code behavior for a variety of values, including border cases. Parameterizing tests can increase code coverage and provide confidence that the code is working as expected.

There are a number of good parameterization frameworks for Java. In this article, we will look at three different frameworks commonly used with JUnit tests, with a comparison between them and examples of how the tests are structured for each. Finally, we will explore how to simplify and expedite the creation of parameterized tests.

Source de l’article sur DZONE

MongoDB is always one step ahead of other database solutions in providing user-friendly suplog port with advance features rolled out to ease operations. The OpLog feature was used extensively by MongoDB connectors to pull out data updates and generate stream. OpLog feature banked on MongoDB’s internal replication feature. While the feature was highly useful, it was complex and necessarily mean tailing of logs.

To simplify things, Change Streams as subscriber to all insert, update, delete MongoDB collection operations was introduced, which should go well with Node.js event-based architecture. 

Source de l’article sur DZONE

UI testing is an important part of quality assurance. Specifically, UI testing refers to the practice of testing front-end components to make sure that they do what they’re supposed to. If a user clicks the Login button, the login modal appears. If they click a link, they’re brought to the appropriate part of the application. With automation platforms, these individual tests can be linked together into workflows and automated. Business-driven development style tests can be created in this fashion. The UI can be tested to see that each individual path that a user may take is functional and that the interface is responding appropriately. Other platforms exist that allow these workflows to be tested on simulated resolutions and devices, ensuring that the user experience is consistent across all possible combinations of browser and device.

API testing lives a layer below UI testing. The UI is fed by these APIs and renders the DOM based upon conditions set by both the user and the developer. These conditions determine the sort of API call that’s made to populate the viewport. When we’re UI Testing, it could be argued that we are indirectly testing the API layer. It’s actually pretty fair to say so. Many of the actions that our UI platform will take will issue API calls. If the DOM rerenders correctly, we can assume to an extent that the API call was successful. The dangerous ground here is the assumption.

Source de l’article sur DZONE


What Is NumPy?

NumPy is a powerful Python library that is primarily used for performing computations on multidimensional arrays. The word NumPy has been derived from two words — Numerical Python. NumPy provides a large set of library functions and operations that help programmers in easily performing numerical computations. These kinds of numerical computations are widely used in tasks like:

  • Machine Learning Models: while writing Machine Learning algorithms, one is supposed to perform various numerical computations on matrices. For instance, matrix multiplication, transposition, addition, etc. NumPy provides an excellent library for easy (in terms of writing code) and fast (in terms of speed) computations. NumPy arrays are used to store both the training data as well as the parameters of the Machine Learning models.
  • Image Processing and Computer Graphics: Images in the computer are represented as multidimensional arrays of numbers. NumPy becomes the most natural choice for the same. NumPy, in fact, provides some excellent library functions for fast manipulation of images. Some examples are mirroring an image, rotating an image by a certain angle, etc.
  • Mathematical tasks: NumPy is quite useful to perform various mathematical tasks like numerical integration, differentiation, interpolation, extrapolation, and many others. As such, it forms a quick Python-based replacement of MATLAB when it comes to Mathematical tasks.

NumPy Installation

The fastest and the easiest way to install NumPy on your machine is to use the following command on the shell: pip install numpy.

Source de l’article sur DZONE

Mark Brewer is CEO of Lightbend, the company known for bringing Reactive to JVM application development. With Strata Data Conference in New York, DZone caught up with Brewer to hear more about trends he is seeing around microservices in the enterprise, and to learn about the 2.0 version of Lightbend’s Fast Data platform.

As the company behind the Scala language, Lightbend was very early on making new abstractions for microservices and data-driven applications available to the broader JVM ecosystem. Talk us through that a little bit.

Source de l’article sur DZONE