Search

Peter Villadsen Phones & Addresses

  • 2039 216Th Pl NE, Sammamish, WA 98074 (425) 242-0439
  • 2039 216Th Ave, Sammamish, WA 98074 (425) 242-0439
  • Redmond, WA
  • Troy, MI
  • Kiona, WA

Work

Company: Microsoft Aug 2012 Position: Principal program manager

Education

Degree: Master of Science, Masters School / High School: Technical University of Denmark 1980 to 1985 Specialities: Electrical Engineering

Skills

Axapta • .Net • Software Design • Microsoft Dynamics • Software Development • Software Project Management • C# • Erp • Development Tools • Xml • Compilers • Microsoft Dynamics Ax • Visual Studio • X++ • Agile Methodologies • Scrum • Agile Project Management • Enterprise Software • Windows Azure • Compiler Technology • Tfs • Distributed Systems

Languages

Danish • French • English

Industries

Computer Software

Resumes

Resumes

Peter Villadsen Photo 1

Principal Program Manager

View page
Location:
Sammamish, WA
Industry:
Computer Software
Work:
Microsoft
Principal Program Manager

Microsoft 2001 - 2006
Software Development Engineer

Damgaard A/S 1992 - 2002
Software Engineer

Damgaard Data 1990 - 1995
Developer and Evangelist

Damgaard International A/S 1990 - 1994
Evangelist and Developer
Education:
Technical University of Denmark 1980 - 1985
Master of Science, Masters, Electrical Engineering
Skills:
Axapta
.Net
Software Design
Microsoft Dynamics
Software Development
Software Project Management
C#
Erp
Development Tools
Xml
Compilers
Microsoft Dynamics Ax
Visual Studio
X++
Agile Methodologies
Scrum
Agile Project Management
Enterprise Software
Windows Azure
Compiler Technology
Tfs
Distributed Systems
Languages:
Danish
French
English

Publications

Us Patents

Structured Search In Source Code

View page
US Patent:
8312437, Nov 13, 2012
Filed:
Dec 30, 2008
Appl. No.:
12/345691
Inventors:
Peter Villadsen - Sammamish WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 9/45
US Classification:
717144, 717137, 717141, 717143, 707706, 707708, 707713
Abstract:
Architecture allows a programmer to answer questions about the source code the programmer is authoring, questions that cannot be answered by other means. A searching mechanism is provided over a much more structured presentation of the source code. The architecture utilizes components that provide an intimate knowledge about the structure of the text, namely, the source code of some particular programming language. The search mechanism employs an abstract syntax tree representation of the code over which the search is conducted. The program source code (as edited by the programmer) is transformed into the abstract syntax tree to embody the structure of the program. If the syntax tree is provided in XML, for example, an XML search mechanism such as Xpath can be utilized to perform the actual searching. This tree is then queried, allowing richer searching criteria to be expressed (by virtue of the structured format of the tree).

Events Fired Pre- And Post-Method Execution

View page
US Patent:
20120144367, Jun 7, 2012
Filed:
Dec 6, 2010
Appl. No.:
12/960710
Inventors:
Peter Villadsen - Sammamish WA, US
Karl Simonsen - Redmond WA, US
Marcos Calderon Macias - Seattle WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 9/44
US Classification:
717120
Abstract:
Customization of source code of a software program like a business application is enabled without modifying the source code of the software. External pieces of source code may be executed prior to, and/or following the invocation of selected methods. The external methods executed prior to a designated method call may change the parameter values that the designated method gets called with, and the methods executed after the designated method has been called may change a value returned from the designated method.

Metadata Based Eventing

View page
US Patent:
20120159429, Jun 21, 2012
Filed:
Dec 15, 2010
Appl. No.:
12/968434
Inventors:
Peter Villadsen - Sammamish WA, US
Zhaoqi Chen - Bellevue WA, US
Marcos Calderon Macias - Seattle WA, US
Assignee:
MICROSOFT CORPORATION - Redmond WA
International Classification:
G06F 9/44
US Classification:
717106
Abstract:
Customization of software source code is enabled by adding the event handlers to be invoked in metadata instead of as coding artifacts. The fact that classes offer delegates that can be assigned handlers is described as part of metadata, in other words, as descriptions of the event itself. By defining eventing in metadata, adding and/or removing handlers for specific events is enabled without programming or modification of the source code.

Sharing Object Representations

View page
US Patent:
20120159515, Jun 21, 2012
Filed:
Dec 16, 2010
Appl. No.:
12/969590
Inventors:
Marcos Calderon - Seattle WA, US
Ashish Gupta - Bellevue WA, US
Peter Villadsen - Sammamish WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 9/44
US Classification:
719316
Abstract:
Concepts and technologies are described herein for sharing object representations between one or more runtime environments. In accordance with the concepts and technologies disclosed herein, logic defining objects includes references to one or more object proxies. Logic defining the object proxies can include a reference to at least one object corresponding to the object proxy. When an object reference associated with the object proxy is generated, the object reference is routed to the object corresponding to the object proxy. According to various implementations, the object is accessed via accessing the object proxy. Thus, the object may appear native to the runtime environment in which the object proxy resides. In some embodiments, a conduit translates object references from object proxies to objects, and enables communications between runtime environments. Objects also can be referenced by more than one object proxies.

Metadata-Based Eventing Supporting Operations On Data

View page
US Patent:
20120159516, Jun 21, 2012
Filed:
Dec 16, 2010
Appl. No.:
12/969587
Inventors:
Peter Villadsen - Sammamish WA, US
Zhaoqi Chen - Bellevue WA, US
Marcos Calderon - Seattle WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 9/46
G06F 17/30
US Classification:
719318
Abstract:
Concepts and technologies are described herein for providing metadata-based eventing supporting operations on data. Application data such as classes and events can be stored in a table and can be associated with and/or described by application metadata. The application metadata also can specify one or more event handlers that reference one or more methods on a class. The event handlers can be invoked via various delegates linked to the one or more application metadata tables. When a create, update, or delete operation on the application data is received, the application metadata can be queried to determine if the application metadata describes event handlers associated with the application data. If event handlers associated with the application data exist, the event handlers can be invoked.

Incremental Generation Of Managed Assemblies

View page
US Patent:
20120227034, Sep 6, 2012
Filed:
Mar 4, 2011
Appl. No.:
13/040264
Inventors:
Gustavo Adolfo Plancarte Ibarra - Woodinville WA, US
Peter Villadsen - Sammamish WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 9/45
US Classification:
717145
Abstract:
Concepts and technologies are described herein for incremental generation of managed assemblies. In accordance with some of the concepts and technologies disclosed herein, a compiler incrementally generates a managed assembly thereby facilitating a rapid application development environment in which changes to the assembly require recompilation of only a changed portion of the assembly instead of recompilation of the entire assembly.

Augmenting An Original Class With An Augmenting Class

View page
US Patent:
20190212988, Jul 11, 2019
Filed:
Mar 15, 2019
Appl. No.:
16/355254
Inventors:
- Redmond WA, US
Marcos Calderon MACIAS - Seattle WA, US
Peter VILLADSEN - Sammamish WA, US
Assignee:
Microsoft Technology Licensing, LLC - Redmond WA
International Classification:
G06F 8/30
G06F 8/51
G06F 8/20
G06F 9/448
Abstract:
An augmenting system for augmenting a program's original class with an augmenting class is provided. In some embodiments, the augmenting system receives a definition of an augmenting class that includes a data member. The augmenting system generates resolution code for the computer program. The resolution code is for accessing a reference to an original instance of the original class and providing a reference to a corresponding augmenting instance of the augmenting class. When processing a statement of the computer program that accesses the data member using the reference to the original instance, the augmenting system generates access code for the computer program. The access code uses the resolution code to retrieve the reference to the augmenting instance for the original instance and accesses the data member based on the retrieved reference to the augmenting instance.

Augmenting An Original Class With An Augmenting Class

View page
US Patent:
20170337038, Nov 23, 2017
Filed:
May 20, 2016
Appl. No.:
15/160973
Inventors:
- Redmond WA, US
Marcos Calderon Macias - Seattle WA, US
Peter Villadsen - Sammamish WA, US
International Classification:
G06F 9/44
Abstract:
An augmenting system for augmenting a program's original class with an augmenting class is provided. In some embodiments, the augmenting system receives a definition of an augmenting class that includes a data member. The augmenting system generates resolution code for the computer program. The resolution code is for accessing a reference to an original instance of the original class and providing a reference to a corresponding augmenting instance of the augmenting class. When processing a statement of the computer program that accesses the data member using the reference to the original instance, the augmenting system generates access code for the computer program. The access code uses the resolution code to retrieve the reference to the augmenting instance for the original instance and accesses the data member based on the retrieved reference to the augmenting instance.
Peter Villadsen from Sammamish, WA, age ~63 Get Report