Thursday, January 31, 2019

Deployment for ASP.NET Core

Deployment for ASP.NET Core

Deployment for ASP.NET Core
.NET Core applications can either run as a command line program with Kestrel, or under IIS. Basically, you can create two types of ASP.NET Core deployments:
  • Framework-dependent deployment. As the name implies, framework-dependent deployment (FDD) relies on the presence of a shared system-wide version of .NET Core on the target system. Because .NET Core is already present, your app is also portable between installations of .NET Core. Your app contains only its own code and any third-party dependencies that are outside of the .NET Core libraries. FDDs contain .dll files that are launched by using the dotnet utility from the command line. For example, dotnet app.dll runs an application named app.
  • Self-contained deployment. Unlike FDD, a self-contained deployment (SCD) doesn’t rely on the presence of shared components on the target system. All components, including both the .NET Core libraries and the Core runtime, are included with the application and are isolated from other Core applications. SCDs include an executable (such as exe on Windows platforms for an application named app), which is a renamed version of the platform-specific .NET Core host, and a .dll file (such as app.dll), which is the actual application.

Why Should ASP.NET Core Technology Teams Know About Docker?

Docker is actually a platform that facilitates the deployment of software in containers. The Docker website provides a helpful definition of containers and the important role they play in software development:
“A container image is a lightweight, stand-alone, executable package of a piece of software that includes everything needed to run it: code, runtime, system tools, system libraries, settings. Available for both Linux and Windows based apps, containerized software will always run the same, regardless of the environment.”
A container is a software component that sits on top on another piece of software in an isolated environment. The container can be used to create an isolated environment in which to develop, test, and launch software.
Then, whether deployed on Linux or Windows-based machines, the containerized applications will run smoothly on them despite any customized settings that differ from the environment in which their code was written and tested.
Use of Hyper-V, VMWare, or other activated virtualization tools are required in order to use containers.
The 5 main benefits of Key Benefits of Docker include CI, Version Control, Portability, Isolation and Security

Use Visual Studio to automatically generate a CI/CD pipeline to deploy an ASP.NET Core web app with Docker to Azure

ASP.NET Core is a lean and composable framework for building web and cloud applications, which can be deployed to Docker containers running on an Azure Container Service. Visual Studio 2017 RC.3 and newer with the Continuous Delivery Tools for Visual Studio extension provide an easy way to set up a full continuous integration (CI) and continuous deployment (CD) pipeline for such applications.
Continuous integration means starting an automated build (and possibly running tests) whenever new code is committed to or checked into the team project’s source control repository. This gives you immediate feedback that the code builds and can potentially be deployed. Continuous delivery (or deployment) means starting an automated deployment process whenever a new successful build is available.

Wednesday, January 30, 2019

Tools used for Continuous Integration (CI) or Continuous Deployment (CD)

Tools used for Continuous Integration (CI) or Continuous Deployment (CD)

Tools used for CI/CD
  • What is CI- With the help of continuous integration, designers incorporate their code in a frequent manner into a fundamental branch of a typical system. Instead of building highlights in the detachment and presenting each of them toward the finish of the cycle, a designer will endeavor to contribute programming work items to the vault a few times on any given day.
  • What is CD- Continuous deployment expands continuous conveyance with the goal that the product assemble will naturally send in the event that it passes all tests.The last advance in a CI/CD framework will naturally send whatever form segments/bundles effectively leaving the conveyance pipeline. In such a procedure, there is no requirement for a man to choose when and what goes into creation. Such programmed deployments can be arranged for rapidly circulate parts, highlights, and fixes to clients, and give clearness on definitely what is underway.
  • Some of the tools for CI/CD– Many tools are used for CI or CD of which mention may be made of Jenkins, Travis, CircleCi, Teamcity, Codeship etc. The below mentioned tools are the important ones-
1) Jenkins- Jenkins is the main open-source venture for mechanizing your activities. Basic uses incorporate building ventures, running tests, bug recognition, code investigation, and undertaking organization. With a huge number of modules to look over, Jenkins can help groups to mechanize any errand that would somehow or another put a tedious strain on your product group. Main use is that it can ne used as a web interface that can be utilized to rapidly arrange your server.
2) Travis CI- Travis CI is a CI stage that computerizes the procedure of programming testing and organization of utilizations. With clients like Facebook, Mozilla, Twitter, Heroku, and others, it’s one of the main constant joining devices available. It’s worked as a stage that incorporates with your GitHub extends so you can begin testing your code on the fly. Some of the important functions are that it works with Email, Slack, HipChat and others for simple notices and expanded API and CMD apparatuses for custom administration.
3) CircleCi- CircleCI gives a cutting edge stage for combination and conveyance, which has helped a huge number of groups over the globe to discharge their code through form mechanization, test robotization, and an extensive organization process. You can rest guaranteed that CircleCI will expand profitability, scale easily, and work with certainty that your group requires. It is with a cutting edge approach towards the necessities of present day programming groups.
http://www.anarsolutions.com/tools-used-continuous-integration-continuous-deployment/utm-source=Blogger.com

Friday, January 25, 2019

Azure App Service

Azure App Service

Speeding up Azure App Service Builds
The Azure App Service may be incorporated with a plenty of services like GitHub, BitBucket, OneDrive, Dropbox, Visual Studio Team Services, area based or other external git repository options, while it empowers a consistent deployment work process, where Azure pulls in the latest updates from a venture published to one of these services.

Make another web application

How about we begin by making a straightforward ASP.NET Core MVC web app utilizing Visual Studio?
· click on New Project…,
· select ASP.NET Core Web Application,
· indicate a name and keep an eye on Add to Source Control,
· at that point Web Application, and
· click OK.
Following a couple of moments the format will be instated and you will have another web application.

Publish to GitHub

You may publish your source code to GitHub through Visual Studio, utilizing GitHub extension for Visual Studio, which can be downloaded as an extension:
In the wake of introducing the extension above, you may choose Team Explorer window, and from Project segment select Sync, click on Publish to GitHub, pick your record, determine name and description, and click Publish, what’s more, following a couple of moments, your code will be published to your GitHub account repository.
In the following stages, the source code from GitHub will be published to Azure App Service.

Make web app in Azure App Service

Right off the bat, you have to make another web app, by clicking on New – Web + Mobile – WebApp, at that point pick a name for your app and select an App Service Plan (the free service design likewise gives the alternative of ceaseless deployment):

Setup Continuous Deployment

To empower consistent deployment, when this web app happens to be made, from the sidebar of the web app, make selection of the Deployment Options, from the Deployment Source select GitHub, approve your record, select the venture and branch to utilize, and click Ok.
Key: SCM_REPOSITORY_PATH
Source: D:\local\repository
In the primary confer, the SCM_REPOSITORY_PATH isn’t set (utilizes default hard drive), while in the second submit the SCM_REPOSITORY_PATH to D:\local\repository is set.
Enhance Continuous Deployment Speed
As your task develops, you may see that the build process running on Azure App Service may turn out to be moderate. One tip to expand the speed of your build process is to utilize a privately mapped rendition of this drive, and to do as such you basically need to include a key esteem combine in your Application Settings.
http://www.anarsolutions.com/azure-app-service/utm_source=Blogger.com

Sunday, January 20, 2019

Bootstrap and Bulma : CSS frameworks for easy development of web interfaces

Bootstrap and Bulma : CSS frameworks for easy development of web interfaces

Bulma and Bootstrap are CSS frameworks which helps in building or developing web interfaces with ease. While they have fairly similar features, they still differ in some ways which creates the difference between these two frameworks.

Why choose Bulma?
Modern features: The latest features of CSS3 like Flexbox is currently in use with future planning of using ‘CSS Variables and CSS Grid’, Bulma aims to stay on the bleeding edge of browser technology and provide a better interface for the users.
Simple grid system: A Bulma grid is a combination wrap of many column items.
Easy-to-learn syntax: Class names are .title or .button which are easily decipherable and its modifier system including .is-large or .is-primary makes it easy to implement Bulma in a matter of minutes.
Font Awesome 5: The .icon element makes Bulma compatible with ‘Font Awesome 4’ as well as ‘Font Awesome 5’.
100+ efficient CSS helpers: The efficiency of Bulma lies in its 100+ helpers that specifically define display, color and spacing.
Responsive helpers – Typography helpers – Other helpers
No JavaScript: A steady CSS focus helps Bulma provide a solution of esy implementation in any developmental sub-context. JavaScript can be well avoided with the help of Bulma.
 Why choose Bootstrap?
jQuery plugins: jQuery plugins are used in the Bootstrap for better website interaction.
Big community: Considering how long it has been around the market, Bootstrap has a larger community than Bulma. As a result, more tools (like theming and plugins) are available, and more questions are answered around the internet.
Internet Explorer use: About 90{837330d4a8ef7eefea6ad76a2e6c839eeae477cba1366427bd0e21e978eaa9aa} of Bulma follows IE11 while Bootstrap is more compatible with this browser.
Additional elements: Elements like list group, page header and wells in Bootstrap make Bulma incompetent.
Thus both boot strap and Bulma has their own importance in their respective fields. So it is a wise decision to make when to choose Bootstrap and when to choose Bulma for designing web browsers.
http://www.anarsolutions.com/bootstrap-bulma/utm-source=Blogger.com

Tuesday, January 15, 2019

Azure App Service

Azure App Service

Speeding up Azure App Service Builds
The Azure App Service may be incorporated with a plenty of services like GitHub, BitBucket, OneDrive, Dropbox, Visual Studio Team Services, area based or other external git repository options, while it empowers a consistent deployment work process, where Azure pulls in the latest updates from a venture published to one of these services.

Make another web application

How about we begin by making a straightforward ASP.NET Core MVC web app utilizing Visual Studio?
· click on New Project…,
· select ASP.NET Core Web Application,
· indicate a name and keep an eye on Add to Source Control,
· at that point Web Application, and
· click OK.
Following a couple of moments the format will be instated and you will have another web application.

Publish to GitHub

You may publish your source code to GitHub through Visual Studio, utilizing GitHub extension for Visual Studio, which can be downloaded as an extension:
In the wake of introducing the extension above, you may choose Team Explorer window, and from Project segment select Sync, click on Publish to GitHub, pick your record, determine name and description, and click Publish, what’s more, following a couple of moments, your code will be published to your GitHub account repository.
In the following stages, the source code from GitHub will be published to Azure App Service.

Make web app in Azure App Service

Right off the bat, you have to make another web app, by clicking on New – Web + Mobile – WebApp, at that point pick a name for your app and select an App Service Plan (the free service design likewise gives the alternative of ceaseless deployment):

Setup Continuous Deployment

To empower consistent deployment, when this web app happens to be made, from the sidebar of the web app, make selection of the Deployment Options, from the Deployment Source select GitHub, approve your record, select the venture and branch to utilize, and click Ok.
Key: SCM_REPOSITORY_PATH
Source: D:\local\repository
In the primary confer, the SCM_REPOSITORY_PATH isn’t set (utilizes default hard drive), while in the second submit the SCM_REPOSITORY_PATH to D:\local\repository is set.
Enhance Continuous Deployment Speed
As your task develops, you may see that the build process running on Azure App Service may turn out to be moderate. One tip to expand the speed of your build process is to utilize a privately mapped rendition of this drive, and to do as such you basically need to include a key esteem combine in your Application Settings.
http://www.anarsolutions.com/azure-app-service/?utm-source=blogger.com

Tuesday, January 8, 2019

Customer Focus: The Key to Success… lies in Customer’s Success

Customer Focus: The Key to Success… lies in Customer’s Success

Nowadays when Services are also commoditized, many service based companies  try

to be Customer Focused. A boost in the customers business directly leverages a growth in Service Provider’s business. Now how can you be the driver to enhance your customers’ business? Of course by providing the services you have promised to them, but not limiting yourself there. Go one step forward and provide them with what they had totally not expected. Keep the customer and their needs as your only focus – know and understand your customers’ business objective and align your services accordingly.
But does it mean to always keep pleasing the customer? Be like a puppet in the customers hands and do whatever they say. No. Customers would appreciate if you analyze their requirement and say “this won’t work” when it would not. Of course you have to work real hard and prove your statement for them to accept it. Show them the various options and discuss with them till you reach a consensus.
Customer does not want free things as value-adds. Instead they will appreciate if you are genuinely working for them and your work is worth the cost.
Lets’ now look at some of the best practices that can be followed so that EVERYTHING absolutely everything is just customer aligned:
  1. Understand the Customer’s assignment:
    1. Analyze the project at hand,
    2. Understand what customer will achieve once this assignment is complete
  2. Align Project Execution Process: Every client may not follow the same style for execution for the project. At times you would like to advise him that Scrum/Agile can be better than waterfall or vice versa. Aligning your process for customer will lead to processes more suited for Customer and Project. Following a process makes things organized and less chaotic to handle.
  3. Project Plan:
    1. Plan execution of this Project as per defined processes
    2. Share Project Plan with Customer and take his inputs
    3. Identify Risks and discuss them with Customer upfront
  4. Realistic Status updates at right time: The customer may not require Status reports every day. Based on Customer’s preference, make sure you send them without fail on pre-decided intervals. This will ensure that customer knows the project status at any given point of time. Avoid the urge of giving misleading updates to client in fear that he will be upset. It is better to face it when you and the Customer have time to mitigate the risks.
  5. Transparent and regular communication: Communication is key function n Outsourced projects. Customer cannot come to team member’s desk and get the clarifications needed at any point of time. He has to rely on communication mediums and team’s availability. If team is regular with their updates and other project related Communication then Customer knows what team is working on and where project stands, he can make any changes needed to the previously defined plan.
The customer has invested in the project with the intention to make it successful. Solution Provider’s success lies in the customers’ success. Even a nagging customer helps you improve by showing you where you lag. Take it as a challenge to give the best service you can to your customers.
http://www.anarsolutions.com/customer-focus-the-key-to-success-lies-in-customers-success/utm_source=Blogger.com

Friday, January 4, 2019

Processes, Practices, Methods The absolute essentials for a quality product

Processes, Practices, Methods The absolute essentials for a quality product

The most crucial step on a project ladder, after one has developed the project management plan and set appropriate project baselines, is the ‘execution’ phase. Whether it is a multi-million dollar project, or a simple business idea being put to test, a lot of people advocate having a process-oriented approach for executing a project successfully. Process execution for smaller assignments, or projects with really tight timelines, may seem like over-egging the pudding. In such a case, it is very tempting to bypass quality processes and get the work done without following standard or predefined processes.
Processes are strong and distinct indicators of ‘how a particular task is to be performed’.
  • Why Processes? 
    • Have you ever experienced variance in the way the same McDonald’s burger tastes at different outlets or at different points of time?
    • Have you experienced a different treatment from Mickey Mouse in Disney parks?
Today, we are competing with McDonald’s and Disney for quality and consistency of the products and services we serve. A customer needs to get an unswerving experience whenever he/she works with us, irrespective of team members, workload or the complexity of the assignment. How can we provide them with the same experience again and again? The answer is simple – through processes. If one does not follow processes, the outcomes are bound to be unpredictable, unstable and dissimilar, even though the severity of the variance of the result may vary due to the team’s skill-sets.
  • What will the customer gain?
    • Assurance of quality: If one has a ‘Code Review Process’, then the customer will know that he is going to get the ‘Reviewed’ code every time.
    • Predictability: The customer will know what to expect at every stage of development life-cycle.
    • Stability: The customer will have better control over the expected outcome of entire product life-cycle.
    • Risk Management: The customer can manage his risks as he has better visibility.
  •  How to ensure process adherence?
    • It is extremely difficult to get one’s team to follow a particular process if they don’t believe in it, especially in Software Development. One needs to strive to build the psychology and the attitude of the team in order to gain process orientation across all projects.
    • Every process needs to have some objectively measurable output (Measurement Metrics). These metrics should get reviewed regularly, in order to enable easy monitoring of process adherence. It is challenging to define such metrics. Hence, one needs to be innovative to achieve it.
    • http://www.anarsolutions.com/processes-practices-methods-the-absolute-essentials-for-a-quality-product/utm-source=Blogger.com