In a recent article Martin Fowler tries to answer the question about when to consider using microservices, hoping that developers understand that there is an inherent complexity involved in making such an architectural change. Sometimes staying with a well-designed monolith may be more appropriate.
Computer-checked models can be used to prove that core communications and state management in a software program are 100% logically correct. Such models can also be used to generate 100% correct source code. The usage of formal methods can reduce costs and time to market and help to deliver highly reliable software products.
Weaveworks, creators of the Weave Docker virtual networking solution, have released a pre-alpha version of 'Weave Scope', an open source developer-focused container monitoring tool. Scope automatically generates a map of containers, enabling developers to visualise, monitor, and control applications by using the information exposed to drive deployment and operational decisions.
Under the name of Project Oxford, Microsoft has made available a set of RESTful APIs that aim to make it possible for developers to build apps that feature face recognition, speech processing, and other machine learning algorithms. Part of the Azure portfolio, the new APIs are currently in beta and free to use up to 5,000 call per month.
NASA Center for Climate Simulation (NCCS) is using Apache Hadoop for high-performance data analytics. Glenn Tamkin from NASA team, recently spoke at ApacheCon Conference and shared the details of the platform they built for climate data analysis with Hadoop.
Today’s applications are commonly unnecessarily complex or slow because of not using Command Query Responsibility Segregation (CQRS), Gabriel Schenker claims while stating he believes CQRS to be one of the most useful architectural patterns when used in the context of complex Line of Business (LOB) applications.
At the inaugural O’Reilly Software Architecture conference, Molly Dishman and Martin Fowler discussed the role of architecture within agile software development. Key takeaways included; architects must remain ‘hands on’; architecture should focus on reducing irreversibility; adaptable documentation is essential; and architecture is a collaborative effort across the business and technical team.
Apple have announced that the company’s popular Siri iOS-based intelligent personal assistant is powered on the backend by Apache Mesos, the open source cluster manager. The Mesosphere blog states that Apple have created a proprietary PaaS-like scheduler framework named J.A.R.V.I.S., which allows developers to deploy Siri services in a scalable and fault-tolerant manner.
Microsoft has announced and made available the preview of Azure Service Fabric (ASF), a cloud platform including a runtime and lifecycle management tools for creating, deploying, running and managing microservices. ASF microservices can be deployed on Azure or on-premises on Windows Server private or hosted clouds. Support for Linux is to come in the future.
Applications claimed to have been built using Domain-Driven Design (DDD) in reality often consists of entities or DTOs separating data and logic together with services containing a mix of business and infrastructure logic, Gabriel Schenker states, noting that this also often applies early on to projects building new applications. Lack of knowledge is one major reason for this, Schenker believes.
At Craft Conference 2015, Adrian Trenaman discussed the evolution of the Gilt.com architecture from a monolithic Ruby on Rails application to a cloud-based microservice ‘lots of small applications’ platform utilising Scala, Docker and AWS. Trenaman shared both technical and organisational lessons learnt from the past eight years, as Gilt has grown from a startup to a $1B company.
At Craft Conference 2015 in Budapest, Mary Poppendieck discussed the ‘new software development game’ and offered advice on how best to utilise containers, microservices and consumer-based contract tests to lower friction and limit risk within software systems.
Big data vendors Hortonworks, IBM, and Pivotal recently announced that their Hadoop based platform products will use the common Open Data Platform (ODP). They made the announcement at the recent HadoopSummit Europe Conference of the open platform which includes Apache Hadoop 2.6 (HDFS, YARN, and MapReduce) and Apache Ambari software.
Programming frameworks, containers, and application platforms are some of the components that make up the modern application architecture. Chip Childers of Cloud Foundry Foundation spoke at ApacheCon Conference last week about modern application architecture and the cloud native application platform.
At Craft Conference in Budapest, Dan North and Jessica Kerr presented a keynote session which cautioned developers that complexity is often found outside of the code. The key messages included: identify and manage areas of complexity; treat learning as a first-class citizen; focus on working to sustainably minimise lead time to business impact; and nurture a supportive team and community.