shout-out

Arpatech is now SOC 2 Type 2 Compliant.

Learn More
header_web_logo


Blog Directory

Importance of User Experience in Online Conversations

Importance of User Experience in Online Conversations

In ancient times, the world businesses carried out without using office implements, devices or machines. Later on, as man invented certain office supplies and devices that provided sufficient aid in making the work not only easier but also fast. Thus, the use telephones, fax machines, copiers, and computers assisted office work. Today, we stand in the modern era where more and more advancements have taken place. Office work supported with latest technology and fastest means of communication devices. The office supplies and devices are making work more effective and reliable. The user should know the importance when the old technology needs to be upgraded.

Businesses are getting services of high-speed internet access with its numerous opportunities to search for their targeted customers. ideally, they have the reliable ways of build brands and research over suppliers. They can communicate with people that can simply bring business and generate profit as well. Therefore, for many companies, appropriate means of technology that runs entire office environment smoothly plays the reliable role. It urges success to companies and to their employees as well.

Managing & Upgrading:

As the new technology and advancements are taking over from time to time so companies should know the importance of user experience. They have to manage and upgrade their old technology with the newer ones. It must avail the advantage of the newer opportunities and upgrades accordingly. So, the importance of user experience should be given intact value and keep on checking the latest technology. It can upgrade your businesses according to the modern requirements.

Moreover, it provides really necessary chances to implement the new advancements and take advantage latest technology. It includes a robust network, to compete with the world more effectively with the same pace. So, it should keep up the pace with the world businesses jump too often from one system or application to another. It means using the latest technology to implement and get fruitful benefits.

Strategy For Upgradation:

Without having a proper experience in online conversations set for the defined strategy for upgradation of office needs. One can’t put up with the world. Businesses that excel classically create their appropriate strategies for upgrading. According to the latest technology it supports them gain a viable advantage.

Even, they have to manage upgradation by different ways like cost savings, method and improvements. Moreover, it can catch faster to market, and also acquiring the enhanced quality and facility levels as well. They must manage their business needs by purchasing new relevant equipment serving their best to cope up with the latest technology. It doesn’t mean that the old tech has to suffer. But, it can constantly upgrade with the advanced office computers. The related accessories by upgrading memory or having external storage devices or faster processors.

Proper Learning For User Experience:

There exists certain skills and learning to manage everything. People would rather extend the lives of their computers than disposing them of. It can upgrade separately and abolish the learning curve desirable to regulate to new systems and accessories accordingly. Even, need of rather a tech savvy to handle such upgrades or to have access to a prominent tech-savvy employee. One should make sure to estimate company’s essential software before getting the newer machines, devices, and systems. For required programs, prepare a wish list having certain features or enhancements that would create utilizing package easier. It feels much better to consider hiring IT professionals so that they can inspect system requirements. Even, to fulfill business needs on their own and can manage the need of upgradation accordingly.

Saima Naz

Sep 30, 2017

Server Configuration For SEO

Server Configuration For SEO

This article will prove to be an essential guide for the SEO beginners who assign to perform onsite activities. Before starting any onsite SEO activity, it really matters that your practical knowledge on how to achieve to tweak. The site should have effective SEO and getting fruitful results from such website. One needs to identify the website’s server to be competent to perform such activity and its scripting format and technologies used for its development.

One should know whether the website server is using Apache or Microsoft IIS? PHP, ASP, or Java. This action will explain the SEO why one should need to know about the server, and even how to find it out which it is. Tweaking the website needs some expertise regarding the web server. It means scripting formation to use in it so that the best SEO results can be achieved.

Obviously, if one entirely contented functioning with PHP on Apache web servers. Thus, it has no awareness of how to use ASP.NET on a Windows server. Then, one should not consent any onsite SEO activity for a Microsoft based web domain for fruitful results. It means unsafe to perform an onsite activity on any website. It remains beyond one’s competences because it might harm the existing constant setup of the domain. One will remain responsible for the occurred damages.

How to recognize if the server practices Apache or Microsoft IIS?

One needs to examine the most significant steps involved to identify the web server which is used by any web domain. If one has an Apache user and wish to practice .htaccess to perform approximate redirects or need to rewrite URL. It will won’t work with IIS. Also, if one feels further familiar at functioning with Microsoft IIS servers than Apache. Then, it will surely become necessary to check first. If the web domain on which onsite SEO activity will perform its best on a Microsoft based server.

Initially: The Apache error .htaccess test:

This technique provides the fastest way to identify if the server is using Apache or Microsoft IIS. But, it needs to note that it does not precisely offer the web server facts every time. However, it means ideal for checking. If it fails to recognize the web server exactly, one should move on to try the another method to achieve best results.

Checking the server scripting language and its technology:

There is something very essential, one should need to be familiar with is the scripting language used by the website i.e. PHP, JSP, VB.NET, C#, etc. Evidently, if one finds the website to be entirely static and is not employing any database. Then, it confirms that it is using .html. There remains several commercial websites running on the Internet and are using a precise scripting technology all over.

One thing to endure in mind that ASP.NET is not any scripting language at all. But, it surely can mean to play a part of the greater Microsoft .NET framework. Having familiar with that tool, the most corporate languages used are C# and VB.NET. Even, there exists several other techniques which can utilize for identifying the scripting language. It used by the domain for attaining effective SEO results on such website.

Template file extension test:

It is the fastest technique, but it will not always conceal the scripting language for the most part if the URL is rewritten, which actually eliminates the file extension. At this stage, simply go to the website and inspect its URL. If the file extension is observed to be as .php, then the website is running on the PHP language script.

While, if the website is practicing .aspx, then it is surely running on ASP.NET. If the website observes with the file extension as .jsp, then it is running on Java server pages. To perform this check is to move to the home page immediately, and then check it out the source code. Search it out for a string such as PHP, aspx or jsp in the URL / href value of the hyperlinks. So, after identifying the file extension test, the scripting language of the website is clearly known and it will surely supportable while performing the SEO on it and getting fruitful results as well.

Saima Naz

Sep 29, 2017

Benefits of Using Mean Stack For Web Development

Benefits of Using Mean Stack For Web Development

In this recent era, lots of development technologies have been introduced from time to time. They offer unbelievable services and fulfilling growing demands of digital renovation across the world. Among such technologies; MEAN STACK is something one of them that gets listed as the greatest technology. It utilizes for developing top mobile apps. Today, MEAN Stack gets employed by leading mobile app development giants across the world.

Basic Acronym for MEAN is

MongoDB: M describes its open source as MongoDB which means a free and cross-platform database used for JavaScript. It utilizes JSON document focused on style that serves entire data representation. So, the reason behind selecting this technology means to restrict us to fair single language-JavaScript for the entire app development.

ExpressJS : E represents ExpressJS which represents one of the utmost dynamic tools; used for developing actual functioning mobile and web applications. So, it provides the negligible framework used for web development as Node.js. Yet, it functions quite enormous and even possible to design entire website simply using Node.js and Express.js. This combination empowers us to design even software on the server-side. It means Node.js becomes really vital and Express.js supports in publishing the app on web domain.

AngularJS: A defines AngularJS which means it is a front-end JS framework that outspreads HTML along with some more new characteristics. It recognizes now widely and utilized in developing client-side apps with integrated code and a data required User Interface. It determines categorically ideal and easy to learn tool for developing Single Page Applications.

Node.js : N elaborates Node.js as a great prevailing, open source and cross-platform. It supports JavaScript-based run-time framework specially designed on Google Chrome’s JSV8 engine. It implements through the worldwide developers as it provides a free platform that combines with ExpressJS to fulfill application development.

MEAN Stack Perception:

As MEAN Stack means a completely free and open-source platform supporting the JavaScript software stack. It is providing facilities in designing websites and web applications. The MEAN Stack developers try their best to implement incredible features to use in across app and web development projects. Therefore, the developers also find the MEAN stack as a great worth, as its applications. They mean capable for writing in a single language for both either at client side or server-side.

mean-graphic

Features & Benefits

Precisely, the noteworthy features can cover across any code with JavaScript as the mutual denominator for the mixed technologies in the MEAN stack. So, the exchanging between client and server code turns into easier with the MEAN stack as JavaScript is quite supportive in both the browser and on the server as well. Although, the MEAN Stack provides efficiency through MongoDB that offers an additional flexibility and a cooperative layer for storing data. While, Node.js supports an efficient nexus for running server and Express.js provides assistance to design your websites. On the client side, AngularJS serves an ideal way to enhance cooperative functions and AJAX-driven rich components. Another significant benefit of this ideal technology means that MEAN can find an independent platform. It plays the courteous part with both Linux and Windows operating systems alike.

Well Managed Web Development Tool

MEAN Stack is defining to the greatest web development tool that writes entire code in JavaScript. Thus, any single project can be easily planned and designed through a very easy tool. Obviously, this makes it a model and classic option for creating real-time web apps. Also, it is using Single Page Applications and the web pages will not require being refreshed for each server request, as different traditional web apps need. Finally, developers find each technology in the MEAN Stack to be free and open-source. The worldwide community of MEAN Developers contributes to further new developments and also the upgrades of the software version.

Saima Naz

Sep 29, 2017

Snapchat OR Instagram Which is the Big Thing?

Snapchat OR Instagram Which is the Big Thing?

Snapchat – Statistics & Facts:

Snapchat is something that considers a great mobile image messaging or multimedia sharing app. It launched by Evan Spiegel, Bobby Murphy, and Reggie Brown in September 2011. This app primarily released for sharing temporary images via private message Snaps. Further, it went to gain success for a user-specified extent of time before becoming remotely. Regardless of its origins as an image app, the video has also turned out to be a vital feature of Snapchat. Today, more than ten billion mobile videos viewed daily. Further, the company has registered over hundred million daily lively users worldwide. Snapchat has also graded as the most popular social media platform among teenagers. Young adults in the US. Even, Snapchat calculated about 166 million daily users from across the world during the first quarter of 2017.

Instagram – Statistics & Facts:

Instagram got familiar also a very familiar image sharing social media platform. It enables worldwide users to take images and edit them accordingly with a wide selection of digital filters. Instagram means also a reliable platform that offers video sharing services for the worldwide users. This video service primarily launched as an iOS app. But, now it finds also accessible for online mobile systems as well.  According to the social network got a survey in September 2017, there are more than 800 million monthly active users are recorded from world regions. At present, the penetration rate of Instagram among internet users in the US is about 32% with a large number of Instagram users in the US probable to surpass about 95 million users in nearly 2020.

Comparison of Snapchat & Instagram:

Let’s overview at the penetration rate of the both Snapchat and Instagram among the people aging between 18 – 34 years. We observe that Snapchat beats Instagram with a ratio of 2:1. Within the seven hundred defendants questioned by YouGov, 45 percent prefer Snapchat stories. Only about 21 percent Instagram stories and 34 percent of defendants had no priority set and are contented to use either of the two.

Active Users of Snapchat & Instagram:

Now let’s check it out the daily active users of the both platforms as to the stories version on Snapchat and Instagram. Since Instagram Stories were launched, starting from August 2016. Here, we can observe that initial steep progress from 0-100 million DAU within the next two months. In the meantime; within the same period Snapchat constantly grows on pretty much with the equivalent pace as it flourished before Instagram launched its stories like adding quite a lot of million users a month. Instagram had recorded about 200 million daily active users of its stories, by the end of April 2017. While Snapchat apparently had about only 160+ million users. No wonder, Instagram is proficient enough to fascinate more users for its stories than Snapchat does.

Final Thoughts:

The development factor means quite critical for Snapchat in a long run, as for any main social platform. If it influences a plateau in its progress like Twitter did, it’ll surely disappoint the stock market. Snapchat is experimenting with the significance to its progress and adoption globally are new technologies. Currently, a Snapchat server-side feature that permits to stitch video snaps-shot from several vantage ideas on the approximate event to make continues video footage that was terrible to create before.

Saima Naz

Sep 28, 2017

Facebook ALGO Changes Marketers Should Know About

Facebook ALGO Changes Marketers Should Know About

The social platform is surely playing a prominent part for any company. It is providing not only visibility and attraction to the customers but also generating profitable revenue in a different manner. The day when many marketers and publishers heard the terrible news. Facebook is applying unexpected changes in its algorithm. This Algo might become the main reason to direct less traffic to content websites.

The ALGO change doesn’t come as a complete shock. A prominent research by SocialFlow prior on this found. The influence of publisher stories had before now dropped by 42%. Facebook doesn’t pronounce about its algorithm changes except they’re going to have a big influence, and this one will. Finally, the publisher traffic around 40% comes from Facebook, as said by recent research from analytics company Parse.ly.

ALGO Will Affect Much

The marketers must know that and it presents clear that the recent ALGO changes will affect much in different points of view. But, if there is something a publisher with a massive Facebook existence like BuzzFeed or Vox. A huge purpose people share the needs like products, news or events on Facebook in the first place. Because, they see them in their News Feed after posting i.e. publishers’ Facebook posts grow massive traffic.

Ad Costs Will Rise

It is also expected that the cost of promotional adverting will rise and the Ad content run on Facebook will gradually rise. Because people from across the world spend a huge amount to promote their business through such ads on the Facebook network. Thus, the publishers had already reached the stage of grief and instant they will buy more Facebook ads for the promotion of their posts. Such ad cost increase will probable advance supply-side costs and the cost per commitment of Facebook ads will ultimately rise.

The Instant Articles Detonation Will Slow

Instant articles have been one of the rapid emerging features of Facebook over the past year. Thus, several brands and publishers post their articles in large quantity directly to promote on Facebook. They receive great hit because they largely get listed higher in the News Feed than links that effort back to the publisher websites. These instant articles will probably take the alike hit as other publisher posts, but the current change in the algorithm will surely make a lot of publishers quite dubious about hand over the control of their content straight to Facebook.

Natural Advertising Will Fade

The advantage to this new change in ALGO was that publishers could now be able to share exclusive content from their own official pages for generating organic traffic. But with the changes in ALGO, publishers will have to depend on buying Facebook traffic to instinctive ads which mean such potential matters might become the greater deal. The ALGO has also created generic difficulties for publishers like BuzzFeed, which generate a large amount by using Facebook to acquire high view counts on videos it makes for brands. If such videos take a hit, ultimately those publishers will have their work left for them.

Saima Naz

Sep 28, 2017

Give 3D Parallax Effect to the 2D Images Using Depth Ma...

3D Parallax effect if used correctly can add cool interactivity to your website that can grab your visitor’s attention. Therefore, some certain websites that have done excellent implementation of mouse following parallax effect. In this tutorial, we are going to replicate such effects.

Traditionally, a photograph used on which layers of elements are added and on mouse movement to create such effects. These different layers move with different speeds giving the illusion of depth. As, you can see in the example below, the scene divided into multiple layers. The layer that will move in slower speed and cover shorter distance will give the effect of being nearer to the observer.

Our client at Arpatech demanded to have such effects. But here’s the catch; it has applied on a real life photograph of a room like below.

Such complex scenery would require precise cutting of objects through Photoshop and then to make multiple layers out of them. Still, it would not look natural as the scene have not much distinct elements to play with. The most object images are blending with one another. Even, if we use the layers method, we will end up making the landing page heavy as the layers would be in PNG format due to the need of transparency. With the new method JPGs can be used, significantly reducing the load time of the page.

By the end of the tutorial you will be able to achieve this result:

Pretty cool, considering that it can achieve in a matter of minutes starting from just a normal 2d image.

The secret sauce behind it is the depth map. Apple uses this technique to create stunning portrait mode photos. It replicates the blur background effect of big lens cameras like DSLRs. What depth map do to provide distant information of each pixel in the photograph? iPhone 7 calculate the distance through the dual camera setup.

Luckily, we can create our own depth map using our own perception and a single Photoshop brush. Let’s get started:

How Depth Map Works:

To create a depth map, first you need to understand how depth maps work. It adds distance information to a 2d image and it uses only the shades of black. The darker the black one becomes the further away. So, it belongs in the scene and the lighter the black is the nearer it belongs. Precisely, complete white color means that the object is the nearest.

In the above image, the left one is actual RGB image and the right one is its depth map. Therefore, we can see the petals that are in lighter tone and the objects are distancing the tone of them are getting darker. In 3D terms, the tone of the color is representing the z-axis information of pixels.

Creating Depth Map Using Photoshop:

  1. Open your photograph in Photoshop

2) Create a new layer, fill it black and turn down the layer opacity to around 50% so you can see the original image below.

3) Turn down the Hardness of brush to 0% and start painting over on the black fill layer. Paint the objects with light tone that are nearer and paint the objects with dark tone that are further.

4) Turn up the opacity of the painted layer to 100% so you can see the final result.

It doesn’t look great. But, it gets the job done. Hence, we deliberately don’t have to do with the edges. It has shifted outwards to give the best result. Now, you save the file as jpg and make sure you save the same dimensions as the original image.

Setting Up The HTML Page:

To interpret the depth map, we are using pixi.js library’s Displacement Filtre.

“<script src='https://cdnjs.cloudflare.com/ajax/libs/pixi.js/4.5.0/pixi.min.js'></script>”

 

Here is the complete code. Feel free to play with the values to adjust the effect according to your liking.

<!DOCTYPE html>
<html >
<head>
  <meta charset="UTF-8">
  <title>Displacement mapping with 2d Face</title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  
     <style>
body {
    background: black;
    color: #ccee99;
    text-align: center;
    position: fixed;
}

#wrap {
    border: 0px solid #333;  
    width:100%;
}

#images img {
    width: 100px;
    height: auto;
}
</style>

  
</head>

<body>
  <div id="wrap">
</div>
  <script src='https://cdnjs.cloudflare.com/ajax/libs/pixi.js/4.5.0/pixi.min.js'></script>
<script>
function resize() {
    if (window.innerWidth / window.innerHeight >= ratio) {
        var w = window.innerHeight * ratio;
        var h = window.innerHeight;
    } else {
        var w = window.innerWidth;
        var h = window.innerWidth / ratio;
    }
    renderer.view.style.width = w + 'px';
    renderer.view.style.height = h + 'px';
}
window.onresize = resize;
  </script>
    <script>
     w=window.innerWidth, h = window.innerHeight;
var renderer = new PIXI.WebGLRenderer(w, h);
var cOutput = document.getElementById('wrap');
cOutput.appendChild(renderer.view);

var stage = new PIXI.Container();
var container = new PIXI.Container();
var foreground = new PIXI.Container();
stage.addChild(container);
stage.addChild(foreground); 

var f;
var fg;
var mousex = w/2, mousey = h/2;
var ploader = new PIXI.loaders.Loader();

function init(){
  console.log('dasdsdasd');
  ploader.add('fg', 'Original.jpg'); //insert Orignal 2d Image Here
  ploader.add('depth', 'DepthMap.jpg'); //insert Depth Map Here

  ploader.once('complete', startMagic);
  // Begin loading -
  ploader.load();
}

function startMagic() {
  fg = new PIXI.Sprite(ploader.resources.fg.texture);

  foreground.addChild(fg);
  
  d = new PIXI.Sprite(ploader.resources.depth.texture);
    f = new PIXI.filters.DisplacementFilter(d, 0);
    fg.filters = [f];  
    window.onmousemove = function(e) {
      mousex = e.clientX;
      mousey = e.clientY;
    };
  animate();
}


function animate() {
console.log('aaaaaaaaaa');
  f.scale.x = (window.innerWidth/2 - mousex) / 79;
  f.scale.y = (window.innerHeight/2 - mousey) / 79;
  fg.addChild(d);
  d.renderable=false;
   
  renderer.render(stage);       
  requestAnimationFrame(animate);
}

// Start -
init();

    </script>

</body>
</html>

 

Now, change the original.jpg with the filename of your original 2d image file. Change depthmap.jpg with your newly created depth map.

Demo:

 

See the Pen Mouse Follow Parallax Effect Using Depth Map by @fatik on CodePen.


Using this method you can give subtle 3d parallax effect to 2d images in no time without running into much complexities. Thanks to Pixi library, the animations are very smooth.

 

Saima Naz

Aug 3, 2017

DevOps Trends to Watch in 2017

DevOps Trends to Watch in 2017

Since, we have witnessed that 2016 passed greatly. A large number of technologies and trends get introduced in the past years. Like, Docker v1.12 released and AWS got some powerful instances types. Moreover, the hybrid cloud (both private and public) became the first choice for enterprises and many more trends.

Here, I am going to share your some latest DevOps trends of 2017 in this blog post.

But, let me give you an introduction to DevOps. DevOps actually serves the collaboration of Development and Operation team to work together. Like, it becomes one unit rather than working the old traditional way. Although, the Agile methodology did great where the development and operation team worked individually. So, it serves to develop any software or fulfill the services.

Ideally, the old traditional method consume time. It lacked the understanding between the team of software development, leading it to customer dissatisfaction. Almost, we are now adopting DevOps as culture for more fast, efficient and reliable software delivery.

DevOps Features

Here, are some DevOps features:

  • Maximizes the speed of delivery
  • Advances customer experience
  • Make use of automated tools on each phase
  • Got more stable operating environments
  • Has improved the collaboration and communication.
  • Enables fast flow for production

DevOps consists of 5 C’s which gives high productivity, less bugs, enhanced and communication. Probably, it provides quick way to resolve issues, more reliable and much more. The 5 C’s of DevOps are:

  1. Integration Continuous
  2. Testing Continuous
  3. Delivery Continuous
  4. Deployment Continuous
  5. Monitoring Continuous

Key Trends of DevOps

Microservices

Since, the name sounds as microservices becomes an architectural way to develop the complex applications. So, it has the ability to create smaller modules through division. Precisely, Microservices can help the developers to decide how to use, design, which language to choose and platform to run and deploy.

Some advantages of microservices:

  • They can develop in various programming languages.
  • Errors in any module or microservice can easily detect saving time.
  • Microservice and modules easy to manage.
  • Updating anything becomes easy now. Just push it on the particular microservice. or else you have to update the whole application.
  • Scaling up and down of any particular microservice without effecting any other microservice is now easy.
  • Microservice leads to the increment in productivity.
  • If any of the module is down, the application remains unaffected.

Containers

Although, containers create virtual environment, allows to run multiple application or OS without interruption. Another, container which one can deploy the application quickly and consistently. Because, the containers have their own CPU, memory, network resources and block I/O. Therefore, it shares with the kernel of host operating system. Thus, lightweight can run directly within host machine. So, you will find some advantages of Containers presented below:

  • Easy to share a container
  • Manage the life cycle of containers with the Docker’s platform
  • It gives consistent computation environment
  • They can run multiple separate application in a single shared OS

Container Orchestration

Due to, the automation, arrangement, coordination and management of containers is container orchestration. Finally, various features of container orchestration include:

  • Cluster Management

Also, the task of a developer limits to launch a cluster of container instances. Surely, it allots the tasks which requires to run. Yet, the management of all the containers perform the tasks through orchestration.

  • Task Definition

It allows the developer to define the task where they require to specify the number of containers. Therefore, they fulfill the task and the dependencies. Moreover, one task can launch through single task definition.

  • Programmatic Control

Although, simple API calls now you can register and de-register tasks, launch and stop Docker containers.

  • Load Balancing

Seems like, load balancing actually helps in distributing traffic across the containers or deployment.

  • Monitoring

In addition, you can now monitor your CPU and memory usage of the running tasks. Hence, it also gets notified if scaling requires through containers. Consequently, some tools used for container orchestration (both paid and open source) are Kubernetes, Docker Swan, Google Containers and Microsoft Containers. Precisely, it becomes clear now and evident that 2017 is going to face a lot more changes, new and innovative ways for DevOps.

What is DevOps? Read here…

Saima Naz

Jul 25, 2017

How to Create an Azure Mobile App using PHP

How to Create an Azure Mobile App using PHP

Bringing you here, the most demanding tutorial as how to create PHP web app in Azure. Azure web apps gives highly scalable and self-patching web hosting service. In this tutorial you will learn how to deploy a PHP app to Azure web apps. We’ll be creating the web app using Azure CLI and will use GIT to deploy the sample PHP code to the web app.

The below steps can be used in Mac, Linux, and Windows. Once the essential requirements such as PHP and GIT are installed, it will take about five minutes to complete all the steps.

Get Free Help From Professional PHP Development Company.

You can create a free Azure account if don’t have the Azure subscription before beginning.

Launch Azure Cloud Shell.

The Azure cloud shell is a free bash shell which can be run directly within the Azure account. It has Azure CLI already installed in it and configured so that can be use with your account. Click on the Cloud Shell button on the upper right of the Azure portal in the menu.

The button will launch an interactive shell which can be use to run all the steps told in this topic.

Run az –version to find the version of the CLI you are using.

Download the Sample

In the terminal window, run these following commands to copy the sample app repository to the local machine.

git clone https://github.com/Azure-Samples/php-docs-hello-world

Now change to the directory that contains the sample code.

cd php-docs-hello-world

Run the App Locally.

First run the application locally by opening terminal window and use the PHP command to launch the pre-built PHP web server.

php -S localhost:8080

Open up any web browser and type  the following local host address http://localhost:8080.

You will see a HELLO WORLD message displayed on the screen from the sample app.

Exit the web server by pressing Ctrl+c

Log in to Azure

Use the Azure CLI 2.0 to create the resources required to host the app in Azure. Log in to the Azure subscription by the AZ login command and follow the directions displayed on the screen.

az login

Configure a deployment user

With the AZ web app deployment user command, create the deployment credentials.

A deployment user is necessary for FTP and Local GIT deployment. The use name and password will be different from the Azure subscriptions credentials.

az webapp deployment user set –user-name <username> –password <password>

Replace the username and password with new one. The name must be unique and the password must be eight characters long.

It is a one time process and the deployment user created can be used for all Azure deployments.

Create a Resource Group

With the AZ group create command, create a resource group.

A resource group is actually a container which posses Azure resources such as web apps, databases and stored accounts to manage and deploy.

az group create –name myResourceGroup –location westeurope

Create the resource by following the above example.

Generally the resources created in a region near you. Run the az appservice list-location command to see the supported locations for the Azure web app.

Create an Azure App Service Plan

With the az appservice plan create command, create an azure app service.

The app service plan specifies the location, features and size of the web server.

App Service plans define:

  • Region (for example: North Europe, East US, or Southeast Asia)
  • Instance size (small, medium, or large)
  • Scale count (1 to 20 instances)
  • SKU (Free, Shared, Basic, Standard, or Premium)

The below example creates an app service plan in free pricing.

az appservice plan create –name myAppServicePlan –resource-group myResourceGroup –sku FREE

After the app service plan be created, the AZURE CLI will show some information like this

{

 "adminSiteName": null,

 "appServicePlanName": "myAppServicePlan",

 "geoRegion": "West Europe",

 "hostingEnvironmentProfile": null,

 "id": "/subscriptions/0000-0000/resourceGroups/myResourceGroup/providers/Microsoft.Web/serverfarms/myAppServicePlan",

 "kind": "app",

 "location": "West Europe",

 "maximumNumberOfWorkers": 1,

 "name": "myAppServicePlan",

 < JSON data removed for brevity. >

 "targetWorkerSizeId": 0,

 "type": "Microsoft.Web/serverfarms",

 "workerTierName": null

}

 

Create a Web App

With the AZ webapp create command, create a web app in the app service plan.

The web app will provide a hosting space for the code and a URL to view the deployed app.

az webapp create –name <app_name> –resource-group myResourceGroup –plan myAppServicePlan

In the above command, replace the app name with some unique name.

Once the web app is created, the Azure CLI will show below information.

{

 "availabilityState": "Normal",

 "clientAffinityEnabled": true,

 "clientCertEnabled": false,

 "cloningInfo": null,

 "containerSize": 0,

 "dailyMemoryTimeQuota": 0,

 "defaultHostName": "<app_name>.azurewebsites.net",

 "enabled": true,

 "enabledHostNames": [

   "<app_name>.azurewebsites.net",

   "<app_name>.scm.azurewebsites.net"

 ],

 "gatewaySiteName": null,

 "hostNameSslStates": [

   {

     "hostType": "Standard",

     "name": "<app_name>.azurewebsites.net",

     "sslState": "Disabled",

     "thumbprint": null,

     "toUpdate": null,

     "virtualIp": null

   }

   < JSON data removed for brevity. >

}

 

Type the following address on any browser to check your newly created web app.

http://<app_name>.azurewebsites.net

A web app in Azure has been created.

Configure local GIT Deployment

With the az webapp deployment source configuration-git command, configure local Git deployment to the web app.

For quickstart, deploy by using local Git. To deploy content to web app, app service supports offers several ways such as FTP, Local Git, GitHub and  Bitbucket

az webapp deployment source config-local-git –name <app_name> –resource-group myResourceGroup –query url –output tsv

Replace app name with the web app’s name in the above command.

The output format will be :

https://<username>@<app_name>.scm.azurewebsites.net:443/<app_name>.git

The username is the deployment username which you have created previously. Save the above URL to use in the next steps.

Push to Azure from Git

git remote add azure <URI from previous step>

Add remote Azure to the local GIT repository,

Push to the Azure remote to deploy the app. Ensures the password you entered is the deployment user password not the password you used to log in to the Azure portal.

git push azure master

The above command will display following information.

Counting objects: 2, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (2/2), done.

Writing objects: 100% (2/2), 352 bytes | 0 bytes/s, done.

Total 2 (delta 1), reused 0 (delta 0)

remote: Updating branch 'master'.

remote: Updating submodules.

remote: Preparing deployment for commit id '25f18051e9'.

remote: Generating deployment script.

remote: Running deployment command...

remote: Handling Basic Web Site deployment.

remote: Kudu sync from: '/home/site/repository' to: '/home/site/wwwroot'

remote: Copying file: '.gitignore'

remote: Copying file: 'LICENSE'

remote: Copying file: 'README.md'

remote: Copying file: 'index.php'

remote: Ignoring: .git

remote: Finished successfully.

remote: Running post deployment command(s)...

remote: Deployment successful.

To https://<app_name>.scm.azurewebsites.net/<app_name>.git

  cc39b1e..25f1805  master -> master

 

Browse to the App

Type the below URL to browse the deployed application on any web browser.

http://<app_name>.azurewebsites.net

Congratulations! you have deployed the PHP app to App service.

Saima Naz

Jul 17, 2017

Some Extremely Useful PHP Tools

Some Extremely Useful PHP Tools

PHP is one of the most popular open-source scripting languages used for server-side web development. It powers major websites like Facebook, WordPress, and many more. It provides some good reasons why developers prefer PHP over other server-side scripting languages, such as Ruby, Python, etc.

PHP is considered a very fast language. It has detailed documentation, a large community, ready-to-use scripts, and supported frameworks. Teams working with professional Software Development Services rely on the right PHP tools to make the development process easy, effective, and quicker.

Here, I am going to present some useful PHP tools that can significantly improve the whole development process.

Key Takeaways:

  • PHP has been powering websites for decades, and it’s still one of the most popular server-side languages out there.
  • The good news is, there’s no shortage of tools to help developers write better code, catch bugs faster, and keep things running smoothly.
  • From Xdebug and PHPUnit to Selenium and PHPDocumentor, the right tools can make a big difference in how efficiently you build and maintain PHP applications.

Webgrind

Specifically, Webgrind is known as a debugging tool. It provides an Xdebug profiling web front end in PHP 5. It can be installed in seconds and works on all platforms.

Xdebug

Xdebug is a popular PHP debugging tool. Specifically, it helps provide lots of useful data to quickly identify bugs in the source code. The tool can easily plug into almost every popular PHP application like PHPEclipse and PHPDesigner.

PHPUnit

PHPUnit is a complete port of JUnit. This tool helps to test the web application’s stability and adaptability. So, it can write test cases within the PHPUnit framework with easy usage.

Selenium

The tool allows writing automatic web application UI tests in any programming language. It works against any HTTP website that uses any mainstream JavaScript-enabled browser. Hence, the tool can be used in combination with PHPUnit to create and run automated tests within the web browser.

PHPDocumentor

PHPDocumentor, aka Phpdoc or Phpdocu, provides a great documentation tool for PHP code. It contains numerous features such as the ability to produce results in HTML, PDF, CHM, and XML DocBook formats. So, it serves both web-based and command-line interfaces along with source code highlighting.

Securimage

Securimage tool serves as a free and open-source PHP CAPTCHA script. It generates complex, difficult images and CAPTCHA codes to give extra protection to your forms.

Pixy: PHP Security Scanner

Pixy is a Java program that automatically scans PHP 4 source code to detect XSS and SQL injection possibilities. The tool takes a PHP program as an input and lists all the possible vulnerabilities found in the code. It supports important additional information to help in understanding the vulnerability.

PHP/SWF Charts

It is one of the powerful PHP tools that lets you create attractive web charts. The graphs are served from dynamic data, and one can make use of PHP scripts to generate and collect data from databases. Then, it makes use of this tool to create Flash (SWF) charts and graphs.

PHPMathPublisher

PHPMathPublisher provides great services as a tool. It can edit mathematical documents on the web using a PHP script. However, it needs no additional LaTeX programs on the server or MathML.

PHP Object Generator

Here, PHP Object Generator serves as a great tool. It provides an open-source web-based tool that helps you quickly construct PHP objects. Also, it utilizes OOP (object-oriented programming) principles in the code.

Scavenger

Another open-source tool is Scavenger, a vulnerability detection tool. The tool helps to react to exposure findings and track vulnerability findings. It also reviews accepted and false-positive answered vulnerabilities.

MagickWand for PHP

The tool MagickWand also serves PHP. It means a PHP module suite to work with the ImageMagick API. You will find it helpful to create, edit, and compose bitmap images. So, the tool supports very easy functions and quickly incorporates image-editing features in PHP applications.

PHP Code Beautifier

The PHP CodeBeautifier tool saves you time by formatting the code to present it in your own way. Specifically, the GUI version allows processing files visually. A command-line version can also integrate with other tools. It can also be used as an integrated tool of PHPEdit.

Conclusion:

PHP continues to be a powerful choice for web application development, and the right set of tools can go a long way in improving the efficiency of the development process. Whether it is debugging, testing, documenting, securing, or optimizing code, these tools help developers create more reliable and maintainable applications. Why settle for average when Arpatech gives you an experienced PHP team dedicated to building web applications that are secure, scalable, and built to last? Let’s get to work.

Saima Naz

Jul 10, 2017