Profile

Cover photo
James McNellis
Works at Microsoft
Attended University of Texas at Arlington
Lives in Issaquah, WA
177 followers|42,447 views
AboutPostsPhotosVideos
People
Have him in circles
177 people
Taylor Harker's profile photo
Matthew Johnson's profile photo
Jeanne Brown's profile photo
Kat Laurange's profile photo
Björn Pollex's profile photo
George V. Reilly's profile photo
Kevin J. Kimtis's profile photo
Tommy Svensson's profile photo
Brian Rasmussen's profile photo
Work
Occupation
Computer Programmer
Employment
  • Microsoft
    Senior Software Development Engineer, 2010 - present
  • Lockheed Martin
    Software Engineer, 2004 - 2010
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
Issaquah, WA
Previously
Arlington, TX - Washington, DC - Lakeville, MN - Orlando, FL - Colorado Springs, CO - Louisville, CO - San Jose, CA - Rockville, MD
Contact Information
Home
Email
Google Talk
james@jamesmcnellis.com
Story
Introduction
I'm a computer programmer; I currently work on the Visual C++ team at Microsoft, where I build awesome C++ libraries.

I am a generic programming aficionado and a top contributor on Stack Overflow, where I answer questions about C++, templates, and the STL (among other things).
Education
  • University of Texas at Arlington
    M.S., Computer Science (Artificial Intelligence), 2008 - 2009
  • The Catholic University of America
    B.A., Philosophy, 2003 - 2007
Basic Information
Gender
Male
Other names
Indutiomarus

Stream

James McNellis

Shared publicly  - 
 
While the last two years working on XAML tooling have been terrific, I was reminded at BoostCon/C++Now two months ago of how much I miss working with C++.  So...

At the end of this month, I'll be joining the Visual C++ team, where I'll be working on building awesome C++ libraries.
4
James McNellis's profile photoPavel Minaev's profile photo
3 comments
 
Angle brackets? It's obviously XML, duh! Try JavaScript.
Add a comment...

James McNellis

Shared publicly  - 
 
 
Your library needs you!
One of the sessions I really enjoyed at the C++Now! Conference was a presentation from Beman Dawes on how to propose a library or extension to the standards committee. By some strange co-incidence <g> this is also our first chance to announce the opening of a public Google group where you can get feedback and guidance on making such proposals! We expect that members of the Library Working Group will be checking in on this group, and hopefully putting our own proposals up here for feedback too. This is a real chance to interact with the standards community, even if you cannot attend meetings.

For further details, take a look at the good groups at http://groups.google.com/a/isocpp.org, and sign up for the Library - Proposals group.
Search · Images · Maps · Play · YouTube · News · Gmail · Documents · More · Calendar · Translate · Mobile · Books · Offers · Wallet · Shopping · Blogger · Reader · Finance · Photos · Videos · Even mor...
1
Pavel Minaev's profile photo
 
The link leads to a rather confusing page when using the new Google Groups interface. This goes straight to the list of groups: https://groups.google.com/a/isocpp.org/groups/dir
Add a comment...

James McNellis

Shared publicly  - 
 
I had a very productive evening with the Visual Studio profiler! Before and after profiles:
1
Alf Steinbach's profile photo
 
Yes, but does it beat intuition? <g>
Add a comment...

James McNellis

Shared publicly  - 
 
 
Dynamic language developers who are concerned about performance end up writing pieces of their applications in C++. So if you're going to write C++ anyway, why not write your entire application in...
1
Add a comment...

James McNellis

Shared publicly  - 
 
I'll be there. Will you?
1
Add a comment...
Have him in circles
177 people
Taylor Harker's profile photo
Matthew Johnson's profile photo
Jeanne Brown's profile photo
Kat Laurange's profile photo
Björn Pollex's profile photo
George V. Reilly's profile photo
Kevin J. Kimtis's profile photo
Tommy Svensson's profile photo
Brian Rasmussen's profile photo

James McNellis

Shared publicly  - 
 
Oh boy! By the size of these boxes, it looks like someone ordered Visual Studio 2012 on 5 1/4" diskettes!
2
1
Bret Kuhns's profile photo
Add a comment...

James McNellis

Shared publicly  - 
 
"C++ is a large, complex language. To make it simpler, we added more stuff to it." -- +Alisdair Meredith at C++Now!
2
Filip Gruszczyński's profile photo
 
Sweet :-) But that's actually true. Since I started using auto I am spending much less time looking at some obscure sub types.
Add a comment...

James McNellis

Shared publicly  - 
 
Grilling the C++ committee members at BoostCon/C++Now last night.
1
Add a comment...

James McNellis

Shared publicly  - 
 
CxxReflect: Native Reflection for the Windows Runtime
2
James McNellis's profile photoPavel Minaev's profile photo
3 comments
 
Actually, my understanding is that GetRuntimeClassName should always return some public (i.e. metadata available) type. If there's no class type that satisfies that constraint, it should then return the "default" interface. As I recall, VC++ implemented it wrong at some point and always returned the (sometimes private) class name, but that was a bug.

Using GetIIDs is, indeed, bottlenecked on perf because there's no efficient lookup of types by IIDs; you have to scan the metadata yourself. What's worse, though, is that you don't even know what you need to scan - there's no guarantee that the metadata file for the given IID has already been loaded, and what do you do then?

(coincidentally, I believe that's why JS projection only looks at GetRuntimeClassName and ignores GetIIDs)
Add a comment...

James McNellis

Shared publicly  - 
 
Whenever I see code that asks what the native byte order is, the odds are about a hundred to one the code is either wrong or misguided. And if the native byte order really does matter to the execution...
1
Add a comment...

James McNellis

Shared publicly  - 
 
I'll be attending C++Now! (a.k.a. BoostCon) in Aspen in May. I am totally excited to attend and meet others who <3 C++ as much as I do!
2
Add a comment...