Posts

Showing posts from January, 2016

This Week I Learned - Week #147

Image
This Week I Learned - * With REST APIs for spell checking , computer vision  (including detecting if image is racy or pornographic in nature), face detection & recognition , emotion recognition , motion detection & tracking faces in video , speech recognition & synthesis , voice recognition , Microsoft's Project Oxford is amazing! *  json2csharp site takes JSON as an input and provides you the C# object model. *  The Firefox 1.0 installable was around 4.5 Mb when it came out in 2004 *  Google CEO Larry Page tends to focus on how to make a sizable business out of whatever problem this or that technology might solve....he knows the right questions to ask....a question he likes to ask: “Why can’t this be bigger?” *  ..the most valuable asset on the WhatsApp platform is the free user-generated data, mostly generated real-time, by close to a billion users that it has worldwide, without paying for it. “There is a lot of consumer intent and interest which is captu

Azure Cloud Security Architecture - infographics & tables

Image
I like information presented in tables as it makes it easy to digest. The Microsoft Azure Cloud Security Architecture whitepaper had some nice info, infographics & tables but as it is in a PDF. As the chances of this info surfacing through search engine results is low, I'm listing the good parts that I liked: Both the customer & Microsoft are responsible for the security of applications on Azure Azure Security Certifications Software applications with source code you develop or control are a potential attack surface. These include PaaS apps, PaaS apps built from sample code in Azure like WordPress sites, and apps that interface with Office 365. Follow code security bestow code security best practices in the Microsoft Security Development Lifecycle (SDL) to minimize vulnerabilities and their security impact.  The SDL is a software development security assurance process consisting of security practices grouped by seven phases of the traditional software develop

This Week I Learned - Week #146

Image
This Week I Learned - * ASP.NET 5 is an open source web framework for building modern web applications that can be developed and run on Windows, Linux and the Mac. *  In previous versions of ASP.NET MVC, MVC controllers were different than Web API controllers. An MVC controller used the System.Web.MVC.Controller base class and a Web API controller used the System.Web.Http.ApiController base class. In MVC 6, there is one and only one Controller class that is the base class for both MVC and Web API controllers. There is only the Microsoft.AspNet.Mvc.Controller class. * Suggestions and feature requests added by users of Microsoft's products on the UserVoice site are prioritized on the development team's backlog based on the votes they get * "Be your own light" - Buddha's last words

Secret of a Happy Marriage

Image

This Week I Learned - Week #145

This Week I Learned - *  The Azure Desired State Configuration (DSC) Extension, which can be used to upload and apply a DSC configuration on an Azure VM, was introduced in August 2014. It is currently at Version 2.13 *  Building Azure VM with ARM templates consists of two rough steps: building a JSON template file and executing the New-AzureRmResourceGroupDeployment cmdlet, which then reads all of the logic inside of this JSON template file to feed the Azure API the parameters it needs to provision a VM...a simple Windows VM will require at least a 140 line template *  Installing Azure PowerShell via WebPi/MSI or Install-Module differs in several ways. One difference is that the WebPi/MSI method installs the PowerShell modules to C:\Program Files (x86)\Microsoft SDKs\Azure\PowerShell\, whereas Install-Module downloads them to C:\Program Files\WindowsPowerShell\Modules. *  Resource Manager APIs and PowerShell modules are incompletely (or simply not) documented, and .. many featu

Azure PowerShell - Questions & Answers

1. What is Azure PowerShell? Azure PowerShell is a module that provides cmdlets to manage Azure with Windows PowerShell.  The Azure Powershell 1.0.1 MSI is hosted on Github (and not on a Microsoft domain as may be expected).  Windows PowerShell scripts are saved as ps1 files. However, if a file is saved as a psm1 file, it can be treated as a module. The functions defined in the psm1 file become the cmdlet names used. 2. How can you know if Azure PowerShell is installed on a machine? To see all available Windows PowerShell modules, the command is: get-module -listavailable See if Azure PowerShell is included. To know the PowerShell version installed on a machine, try - $psversiontable 3. How can you find the version of Azure PowerShell module installed on a machine? To check the version of a module in your PowerShell environment, the command is: (Get-Module <module name>).Version So to know the version of Azure PowerShell module installed on a machine, use: (Get-Modu

This Week I Learned - Week #144

Image
This Week I Learned - *  Visual Studio Team Services Features Timeline lists significant features delivered to Visual Studio Team Services and the corresponding version of Team Foundation Server. *  Azure Resource Manager templates can be used to deploy your application by using either Azure PowerShell, Azure CLI, REST API, or the Azure portal. *  Between 2008 and April 2014, Amazon lowered its prices an unprecedented 42 times. *  Even as Freshdesk directly competes with New York Stock Exchange-listed entities Zendesk and Salesforce.com, investors are betting big on the company’s feature-rich software products that are available at affordable prices. The five-year-old company recently launched its second software product Freshservice, an internal IT help desk for employees. * Microsoft will stop supporting  Internet Explorer 8, 9 and 10 next week, making them vulnerable to hackers. Users can still upgrade to version 11. *  There are more than 180,000 Drone Users Registered

One typical Friday evening in Bangalore

Image
Google Maps provides a great visualization of the live traffic as well as the typical traffic based on historical traffic data - this is a fantastic idea! Routes having heavy congestion are shown in red and dark red. This is how the traffic looks on a typical Friday evening in Bangalore: ..and this was how it looked when my wife who was visiting Bangalore had to travel from ITPL to the Bangalore City Railway station on a Friday to catch a train at 6:20pm We booked a Meru Cab a day earlier (there is a convenience charge of Rs 60 for booking through their call center, a per kilometre cost of Rs 19.50 after the first 4 kms which cost Rs 80  during day time - a relatively higher price than competitors that elicits higher expectations) that was supposed to arrive at 3:30pm. There wasn't any information from the driver or Meru that the pickup would be delayed. Upon being contacted, the driver promised to be there by 3:45pm but didn't turn up. Meru Cab's tagline is "

Azure Naming Guidelines

I liked the idea of the table from the  Azure Resource Group Deployment Task documentation - Kind Length Casing Valid Chars Globally Unique Storage Account 3-24 lowercase alphanumeric Yes Azure Resource Group 2-64 case-insensitive alphanumeric periods, underscores, hyphens and parenthesis and cannot end in a period No Azure KeyVault 3-24 case-insensitive alphanumeric Yes Azure DNS Name 3-63 lowercase alphanumeric and hyphens Yes I plan to add more rows related to other Azure Services so that this can be a ready reference work in progress... Related - Azure Implementation Guidelines

Office Apps Online Viewer can display web hosted Office documents as a web page

Image
Much like the almost killed Google Docs Viewer  which can let you open popular file formats including Word, Excel & Powerpoint documents hosted on the web within the browser , the Office Apps Viewer can display Office document formats. With Google Docs Viewer, you had to append the URL of a web hosted document as a value to the url field - https://docs.google.com/viewer?url= http://research.google.com/archive/bigtable-osdi06.pdf With the Office Apps Online Viewer, you similarly have to provide the URL of a web hosted document  as a value to the  src  field. I randomly picked some publicly available online Office documents to show examples. Click on the links below to see the Office Apps Online Viewer in action - https://view.officeapps.live.com/op/view.aspx?src= www.cdc.gov/stltpublichealth/docs/usph101.pptx https://view.officeapps.live.com/op/view.aspx?src= kdla.ky.gov/librarians/Documents/Sick%20Leave%20Policy.doc https://view.officeapps.live.com/op/view.aspx?src= htt

Learning resources on DevOps with Azure

Image
slide from DevOps Introduction Update 10/Sep/16 - This comprehensive cheat sheet maintained by Julien Stroheker  written after I started compiling my list has a lot of useful learning material. * The level 300 video course Deep Dive into Azure Resource Manager Scenarios and Patterns  on MVA, published on 01 October 2015 has well-organized content on ARM. The way the presenters run into an unexpected failure during the demo in episode 3 and then go on to debug & investigate what went wrong was very educational. * DevOps Fundamentals  series on Channel 9 work in progress

List of DevOps practices

According to the IT Pro Guy, the following constitute fundamental DevOps practices : Infrastructure as Code (IaC) - is the practice in which the techniques, processes, and tool sets used in software development are leveraged to manage the deployment and configuration of systems, applications, and middleware. A significant number of testing and deployment defects occur when developers’ environments defining the application and underlying infrastructure differ from testing and production environments. Standardizing these environment definitions, putting them under version control, and deploying and configuring the infrastructure and application automatically from the code in version control, yields immediate benefits in consistency, time savings, error rates, and auditability. Continuous Integration (CI) - is the practice of merging all working copies of developers code with a shared mainline, producing a new build upon code check-in. Ideally CI also involves libraries of Integratio

Azure SQL Database Service Tiers

Image
Azure SQL Database Service tiers and database options  (as of 3/Jan/2015): Service tier Target workloads Transactional Perf. Objective SLA Basic Best suited for a small size database, supporting typically one single active operation at a given time . Examples include databases used for development or testing, or small scale infrequently used applications. Reliability per hour 99.99% Standard The go-to option for most cloud applications, supporting multiple concurrent queries . Examples include workgroup or web applications. Reliability per minute 99.99% Premium Designed for high transactional volume , supporting a large number of concurrent users and requiring the highest level of business continuity capabilities . Examples are databases supporting mission critical applications. Reliability per second 99.99% The following table shows the differences of the business continuity features across the service tiers : BCDR option Basic tier Sta

This Week I Learned - Week #143

This Week I Learned - *  Microsoft claims that Service Fabric is the foundational technology on which it runs Azure core infrastructure. It powers some of the Microsoft cloud services such as Skype, InTune, Azure Event Hubs, and Cortana. *  A new version of Firefox is shipped every six weeks. Mozilla calls this pattern "release trains". *  WPOStats compiles case studies and experiments demonstrating the impact of web performance optimization (WPO) on user experience and business metrics. *  Google Site Reliability Engineers (SREs) at Google are the software engineers responsible for ensuring that all of Google’s services are super reliable and super fast, all of the time. *  Google Translate is translating one million words every second. *  India is the third-largest market for mapping services *  The Asus Chromebit taps into the demand for a simple cheap computer of the type that the failed Aakash project was supposed to service. Its central processing unit is

Comparison chart: Azure App Service Plans

Comparison charts provide the summary of any story in a more visually memorable way. As part of my learning, I plan to compile illustrations, architecture diagrams , comparison charts for easy reference. The Azure App Service offering provides 6 tiers : Features / Tiers Free - Dev/test apps Shared - Dev/test with higher limits Basic - Go live with basic apps Standard - Go live with web, mobile, logic apps Premium - Maximum scale, isolation, and enterprise connectivity Isolated - High-Performance, Security and Isolation Cores Shared Shared 1,2,4 1,2,4 1,2,4,8  1,2,4 RAM (in GB) 1 0.5 1.75, 3.50, 7 1.75, 3.50, 7 1.75, 3.50, 7, 14  3.50, 7, 14 Storage (in GB) 1 1 10 50 250  1 TB Web, mobile, or API apps 10 100 Unlimited Unlimited Unlimited  Unlimited Logic apps (Preview) 10 10 10 25 100 Disk space 1 GB 1 GB 10 GB 50 GB 500 GB Maximum instances -- -- Up to 3 Up to 10 Up to 20  Up to 100* SLA No No 99.95% 9