Thursday, December 10, 2015

The type or namespace name 'DataMember' could not be found (are you missing a using directive or an assembly reference?)

The type or namespace name 'DataMember' could not be found (are you missing a using directive or an assembly reference?) 


using System.Runtime.Serialization;

        [DataMember]
        public string FileName { get; set; }

Solution:

Add this reference to your project:

System.Runtime.Serialization (System.Runtime.Serialization.dll)


The type or namespace name 'Add this reference to your project: System.Runtime.Serialization (System.Runtime.Serialization.dll)
System.Runtime.Serialization

Wednesday, December 9, 2015

The imported project WebApplication.targets was not found. Confirm that the path in the declaration is correct and that the file exists on disk.

The imported project WebApplication.targets was not found. Confirm that the path in the <Import> declaration is correct and that the file exists on disk.

Quick Solution (not considering MSBuild versions):

Copy the folder with the latest version number from C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio and paste it in C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio and renamed it to the version that is missing. Example:
Copy and paste:
  C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0 
as:
  C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0

Note: In the above solution, "C:\Program Files (x86)\" may be "C:\Program Files\" on your machine.


Saturday, December 5, 2015

Jolt Award 2014 Winners

Jolt Award 2014 Winners 


Book: Python in Practice by Mark Summerfield

Productivity: Programming: Principles and Practice Using C++, 2nd Edition by Bjarne Stroustrup

Productivity: Single Page Web Applications: JavaScript End-to-End by Michael Mikowski and Josh Powell

Jolt Finalist: Threat Modeling by Adam Shostack

Jolt Finalist: Rethinking the Internet of Things by Francis daCosta

Jolt Finalist: Automate With Grunt by Brian Hogan

Software:

Coding Tools Jolt Award: Microsoft Visual Studio 2013

Jolt Productivity Awards: JetBrains IntelliJ IDEA version 13, IPython Notebook.

Cloud9 IDE

Cloud9 IDE

Cloud9 IDE, the winner of Jolt Award 2015, is a freeware online integrated development environment. It supports hundreds of programming languages, including C++, PHP, Ruby, Python, JavaScript with Node.js, CSS, CoffeeScript, Lua and Go. It enables developers to get started with coding immediately with pre-setup workspaces, collaborate with their peers with collaborative coding features, and web development features like live preview and browser compatibility testing.

Developer's Step by Step Approach To Develop a Complex Software Component

Developer's Step by Step Approach To Develop a Complex Software Component
version 1.0

1. Understanding the requirements of the component.

2. Drawing a simple flowchart to present the process flow.

3. Drawing a simple flowchart to present how this component interacts with the other components.

4. Checking the UI/mockup screens to make sure they have all the elements/controls to cover the requirements.

5. Designing the tables to store data.

6. Identifying the major classes to be developed.

7. For each class, making a list of methods that should be developed to complete the processes identified in Step 2 and Step 3.

8. Developing stored procedures.

9. Developing class methods for DAL (data access layer).

10. Developing class methods for BAL (business access layer).

11. Developing class methods for API (application program interface).

12. Developing UI functions to call API methods.

13. Unit testing.

14. Packaging for QA.





All rights reserved. Any unauthorized broadcasting, public performance, copying or re-recording will constitute an infringement of copyright.


 




Wednesday, December 2, 2015

Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets"

Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets"


The imported project "C:\Program Files *** MSBuild Microsoft VisualStudio *** WebApplicationsMicrosoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. 

Solution:

Switch:

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

to:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />



or change:

<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />

to:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

If the issue persists then remove the following block from your csproj file:

  <PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
  </PropertyGroup> 

The type or namespace name 'Mvc' does not exist in the namespace 'System.Web'

The type or namespace name 'Mvc' does not exist in the namespace 'System.Web' (are you missing an assembly reference?)

Solution: 

Clean your solution and then set the property of those references to Copy Local = True. If Copy Local is read-only, remove the reference and add it to the project again.

 
The type or namespace name 'Mvc' does not exist in the namespace 'System.Web'
Copy Local = True

Sunday, November 29, 2015

How To Change the Port for Remote Desktop (RDP) in Windows

How To Change the Port for Remote Desktop (RDP) in Windows
This post provides a step by step approach for changing the listening port for Remote Desktop.

Step 1. Start Registry Editor; in the command window (CMD), type regedit and press the Enter key.


Step 2. Go to the following registry subkey:
 

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp\PortNumber

It is displayed in the first screenshot below.

Step 3. On the Edit menu, click Modify, and then click Decimal (it is displayed in the second screenshot below).

Step 4. Type the new port number and then click OK. The new port number should be between 1025 and 65535.

Step 5. Quit Registry Editor.

Step 6. Restart your computer.


How To Change the Port for Remote Desktop (RDP) in Windows
Go to the following registry subkey:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp\PortNumber





Type the new port number, and then click OK. The new port number should be between 1025 and 65535.
Type the new port number and then click OK.








Li-Fi

Li-Fi 

Li-Fi (Light Fidelity) is a bidirectional, high speed and fully networked wireless communication technology similar to Wi-Fi. Coined by Prof. Harald Haas, Li-Fi is a subset of optical wireless communications (OWC) and can be a complement to RF communication (Wi-Fi or Cellular network), or a replacement in contexts of data broadcasting. For now, long restricted to the academic domain, Li-Fi, a light-based data delivery method is suddenly getting all sorts of attention. An Estonian startup Velmenni recently tested an commercial implementation and found it to be superior to Wi-Fi in almost every way – except as something you and I will probably ever use. Velmenni’s technology, called Jungru, uses an LED bulb and transmits data at gigabit speed. It has a theoretical speed of 224 gigabytes per second, the BBC reported. While the Jungru product is commercially viable, it is still based on what seems to be a laboratory-grade MATLAB and Simulink setup paired with photodiodes as opposed to a final product which must transmit data in real world environments full of light pollution and other variables.
For now, long restricted to the academic domain, Li-Fi, a light-based data delivery method is suddenly getting all sorts of attention. An Estonian startup Velmenni recently tested an commercial implementation and found it to be superior to Wi-Fi in almost every way – except as something you and I will probably ever use. Velmenni’s technology, called Jungru, uses an LED bulb and transmits data at gigabit speed. It has a theoretical speed of 224 gigabytes per second, the BBC reported. While the Jungru product is commercially viable, it is still based on what seems to be a laboratory-grade MATLAB and Simulink setup paired with photodiodes as opposed to a final product which must transmit data in real world environments full of light pollution and other variables.

Li-Fi



 

What is WebAssembly?

What is WebAssembly?

WebAssembly or wasm is an experimental efficient low-level programming language for in-browser client-side scripting, which is currently in development. Its initial aim is to support C/C++, though other languages are also intended to be supported. WebAssembly is a portable abstract syntax tree which is designed to be faster to parse than JavaScript, as well as faster to execute. The initial version of WebAssembly will be based on asm.js and PNaCl. The team working on WebAssembly includes people from Mozilla, Google, Microsoft, and Apple (who respectively control the four major browsers, Firefox, Chrome, Internet Explorer, and Safari). In summary,WebAssembly is:
⌂ An improvement to JavaScript: Implement your performance critical stuff in wasm and import it like a standard JavaScript module.
⌂ A new language: WebAssembly code defines an AST (so does JavaScript) represented in a binary format. You can author and debug in a text format so it’s readable.
⌂ A browser improvement: Browsers will understand the binary format, which means we’ll be able to compile binary bundles that compress smaller than the text JavaScript we use today. Smaller payloads mean faster delivery. Depending on compile-time optimization opportunities, WebAssembly bundles may run faster than JavaScript.
⌂ A Compile Target: A way for other languages to get first-class binary support across the entire web platform stack.
Expect the contents of this repository to be in flux: everything is still under discussion:
WebAssembly is efficient and fast: The wasm AST is designed to be encoded in a size- and load-time-efficient binary format. WebAssembly aims to execute at native speed by taking advantage of common hardware capabilities available on a wide range of platforms.
WebAssembly is safe: WebAssembly describes a memory-safe, sandboxed execution environment that may even be implemented inside existing JavaScript virtual machines. When embedded in the web, WebAssembly will enforce the same-origin and permissions security policies of the browser.
WebAssembly is open and debuggable: WebAssembly is designed to be pretty-printed in a textual format for debugging, testing, experimenting, optimizing, learning, teaching, and writing programs by hand. The textual format will be used when viewing the source of wasm modules on the web.
WebAssembly is part of the open web platform: WebAssembly is designed to maintain the versionless, feature-tested, and backwards-compatible nature of the web. WebAssembly modules will be able to call into and out of the JavaScript context and access browser functionality through the same Web APIs accessible from JavaScript. WebAssembly also supports non-web embeddings.

References:




System.Numerics.Vectors

System.Numerics.Vectors

System.Numerics.Vectors is a library of vector types that can take advantage of SIMD hardware-based acceleration. Hardware acceleration can result in significant performance improvements in mathematical, scientific, and graphics programming. System.Numerics.Vectors includes 2-dimensional, 3-dimensional, and 4-dimensional vectors of type Single. The generic Vector<T> structure allows you to create a vector of any primitive numeric type. (The primitive numeric types include all numeric types in the System namespace except for Decimal.) In addition, the Vector class provides a library of convenience methods that you can call when working with vectors. Also, System.Numerics.Vectors includes two matrix types: Matrix3x2, which represents a 3x2 matrix; and Matrix4x4, which represents a 4x4 matrix. In addition, System.Numerics.Vectors includes a Plane type and a Quaternion type.



Note 1: Vector<T> Structure represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. 

Note 2: System.Numerics.Vectors.WindowsRuntime provides extension methods for converting between System.Numerics.Vector2 and Windows.Foundation.Point and Size. Its commonly used type is: System.Numerics.VectorExtensions.

SIMD

SIMD

SIMD is short for Single Instruction/Multiple Data, while the term SIMD operations refers to a computing method that enables processing of multiple data with a single instruction. SIMD is a class of parallel computers in Flynn's taxonomy. It describes computers with multiple processing elements that perform the same operation on multiple data points simultaneously. Thus, such machines exploit data level parallelism, but not concurrency: there are simultaneous (parallel) computations, but only a single process (instruction) at a given moment. SIMD is particularly applicable to common tasks like adjusting the contrast in a digital image or adjusting the volume of digital audio. Most modern CPU designs include SIMD instructions in order to improve the performance of multimedia use.


Flynn's Taxonomy

Flynn's Taxonomy

Flynn's taxonomy is a classification of computer architectures as in the following::

Single instruction stream     Multiple instruction streams     Single program     Multiple programs
Single data streamSISDMISD
Multiple data streamsSIMDMIMDSPMDMPMD

Friday, November 27, 2015

CSRF Protection: When It Breaks, It Breaks Very Quietly

CSRF Protection: When It Breaks, It Breaks Very Quietly

Cross-site request forgery (CSRF) is tricking the browser with a malicious (or compromised) site B to access something on site A.  Since requests for site A would include site A's cookie whether requested by A or not, an image tag or embedded JavaScript on site B can submit some requests on site A that a logged-in user can do, like accessing private info with the appropriate POST parameters to make it happen. Rails has a mechanism that defends against CSRF: all one should to do is include a few lines of code as:

class ApplicationController < ActionController::Base
  protect_from_forgery
end

class FooController < ApplicationController
  protect_from_forgery except: :index

Rails will then basically generate cryptographically secure random number, totally transparently to the developer; it is called the CSRF token.

AJAX To Send CSRF Token Authenticity

AJAX To Send CSRF Token Authenticity

To send CSRF (XSRF) token authenticity in all AJAX requests:

$.ajaxSetup({
     headers: { 
 'X-CSRF-Token': $('meta[name="csrf-token"]').attr('content') 
 }});

Tuesday, November 24, 2015

Mad Mobile Acquires KidoZen

Mad Mobile Acquires KidoZen 
Gartner Cool Vendor 2015 for Mobile App Development

TAMPA, Fla., Nov. 23, 2015 /PRNewswire/ --Mad Mobile, Inc. announced that it has acquired the assets of KidoZen, Inc., a company recognized by Gartner as a Cool Vendor for Mobile App Development in 2015.

The KidoZen mobile platform currently powers enterprise mobile applications for Citrix, Koch Industries, JM Family Enterprises, IFF, Bell & Howell, and other leading companies.

Mad Mobile plans to integrate the KidoZen technology with its proven Mad.X platform to offer the most powerful mobile-first platform on the market featuring:

Instant mobile integration with Oracle, SAP, IBM, Microsoft SharePoint, Salesforce and 50+ other enterprise systems. More data connectors than any other platform. Unique mobile data orchestration, optimization, and atomization Mobile UI builder with starter templates Plug-in mBaaS services for mobile functions Comprehensive analytics to measure API and app performance Enterprise App Store for public and private app distribution

The KidoZen platform enhances Mad Mobile's capability to offer its customers a choice of delivery models: full-service, self-service, hybrid, cloud or on-premise. Mad Mobile builds complex, highly transactional mobile applications for top companies such as Sysco, AutoNation, Major League Baseball, Payless Shoesource, and Aeropostale.

In conjunction with the closing of the transaction, core members of the KidoZen team including a development group located in Buenos Aires, Argentina will transition to Mad Mobile, while service for KidoZen customers will be uninterrupted.

"This is a very exciting day for our company and customers. Our combined technologies will enable us, and our customers, to build enterprise applications faster and better than ever," said Bruce Bennett, Chief Executive Officer of Mad Mobile.

About Mad Mobile, Inc.: Mad Mobile powers mobile experiences for the Global 2000. Our solutions span multiple omnichannel touchpoints including smartphone, tablet, apps, and in-store experiences. Mad Mobile is recognized by Gartner and Forrester as a leader in full service mCommerce platforms. Mad Mobile has experienced rapid growth since inception with an impressive client list of global brands. Mad Mobile is a disruptive force in enterprise mobility. The company is privately held. www.madmobile.com

About KidoZen, Inc.: KidoZen was founded in December 2011 to democratize enterprise mobility by providing the fastest, most affordable and secure way to deploy enterprise mobile applications. Over its short time in the market, KidoZen received over $6 Million in venture capital funding and has been recognized by Gartner and Forrester as a leader in the Mobile Enterprise space. KidoZen launched the industry's first enterprise Mobile Backend as a Service (MBaaS) in February 2013 and set the pace of the industry by delivering a next-generation enterprise mobile app platform for end-to-end mobile application management.

SOURCE Mad Mobile, Inc.

Monday, November 23, 2015

iAd Producer

iAd Producer

iAd Producer offers a single-window interface for viewing and editing layouts and settings of iAd rich media ad projects. It gives each access to project templates with pre-built structure including banners, splash pages, and menus.
iAd Producer includes:
    * A single-window interface for viewing and editing layouts and settings
    * Project templates with pre-built structure including banners, splash pages, and menus
    * An extensive library of interactive elements
    * Sophisticated object animation tools
    * Advanced JavaScript code editing and debugging
    * Simulation for Mac and iOS devices