Search Results

Search found 1249 results on 50 pages for 'eric r rath'.

Page 44/50 | < Previous Page | 40 41 42 43 44 45 46 47 48 49 50  | Next Page >

  • Why enumerator structs are a really bad idea

    - by Simon Cooper
    If you've ever poked around the .NET class libraries in Reflector, I'm sure you would have noticed that the generic collection classes all have implementations of their IEnumerator as a struct rather than a class. As you will see, this design decision has some rather unfortunate side effects... As is generally known in the .NET world, mutable structs are a Very Bad Idea; and there are several other blogs around explaining this (Eric Lippert's blog post explains the problem quite well). In the BCL, the generic collection enumerators are all mutable structs, as they need to keep track of where they are in the collection. This bit me quite hard when I was coding a wrapper around a LinkedList<int>.Enumerator. It boils down to this code: sealed class EnumeratorWrapper : IEnumerator<int> { private readonly LinkedList<int>.Enumerator m_Enumerator; public EnumeratorWrapper(LinkedList<int> linkedList) { m_Enumerator = linkedList.GetEnumerator(); } public int Current { get { return m_Enumerator.Current; } } object System.Collections.IEnumerator.Current { get { return Current; } } public bool MoveNext() { return m_Enumerator.MoveNext(); } public void Reset() { ((System.Collections.IEnumerator)m_Enumerator).Reset(); } public void Dispose() { m_Enumerator.Dispose(); } } The key line here is the MoveNext method. When I initially coded this, I thought that the call to m_Enumerator.MoveNext() would alter the enumerator state in the m_Enumerator class variable and so the enumeration would proceed in an orderly fashion through the collection. However, when I ran this code it went into an infinite loop - the m_Enumerator.MoveNext() call wasn't actually changing the state in the m_Enumerator variable at all, and my code was looping forever on the first collection element. It was only after disassembling that method that I found out what was going on The MoveNext method above results in the following IL: .method public hidebysig newslot virtual final instance bool MoveNext() cil managed { .maxstack 1 .locals init ( [0] bool CS$1$0000, [1] valuetype [System]System.Collections.Generic.LinkedList`1/Enumerator CS$0$0001) L_0000: nop L_0001: ldarg.0 L_0002: ldfld valuetype [System]System.Collections.Generic.LinkedList`1/Enumerator EnumeratorWrapper::m_Enumerator L_0007: stloc.1 L_0008: ldloca.s CS$0$0001 L_000a: call instance bool [System]System.Collections.Generic.LinkedList`1/Enumerator::MoveNext() L_000f: stloc.0 L_0010: br.s L_0012 L_0012: ldloc.0 L_0013: ret } Here, the important line is 0002 - m_Enumerator is accessed using the ldfld operator, which does the following: Finds the value of a field in the object whose reference is currently on the evaluation stack. So, what the MoveNext method is doing is the following: public bool MoveNext() { LinkedList<int>.Enumerator CS$0$0001 = this.m_Enumerator; bool CS$1$0000 = CS$0$0001.MoveNext(); return CS$1$0000; } The enumerator instance being modified by the call to MoveNext is the one stored in the CS$0$0001 variable on the stack, and not the one in the EnumeratorWrapper class instance. Hence why the state of m_Enumerator wasn't getting updated. Hmm, ok. Well, why is it doing this? If you have a read of Eric Lippert's blog post about this issue, you'll notice he quotes a few sections of the C# spec. In particular, 7.5.4: ...if the field is readonly and the reference occurs outside an instance constructor of the class in which the field is declared, then the result is a value, namely the value of the field I in the object referenced by E. And my m_Enumerator field is readonly! Indeed, if I remove the readonly from the class variable then the problem goes away, and the code works as expected. The IL confirms this: .method public hidebysig newslot virtual final instance bool MoveNext() cil managed { .maxstack 1 .locals init ( [0] bool CS$1$0000) L_0000: nop L_0001: ldarg.0 L_0002: ldflda valuetype [System]System.Collections.Generic.LinkedList`1/Enumerator EnumeratorWrapper::m_Enumerator L_0007: call instance bool [System]System.Collections.Generic.LinkedList`1/Enumerator::MoveNext() L_000c: stloc.0 L_000d: br.s L_000f L_000f: ldloc.0 L_0010: ret } Notice on line 0002, instead of the ldfld we had before, we've got a ldflda, which does this: Finds the address of a field in the object whose reference is currently on the evaluation stack. Instead of loading the value, we're loading the address of the m_Enumerator field. So now the call to MoveNext modifies the enumerator stored in the class rather than on the stack, and everything works as expected. Previously, I had thought enumerator structs were an odd but interesting feature of the BCL that I had used in the past to do linked list slices. However, effects like this only underline how dangerous mutable structs are, and I'm at a loss to explain why the enumerators were implemented as structs in the first place. (interestingly, the SortedList<TKey, TValue> enumerator is a struct but is private, which makes it even more odd - the only way it can be accessed is as a boxed IEnumerator!). I would love to hear people's theories as to why the enumerators are implemented in such a fashion. And bonus points if you can explain why LinkedList<int>.Enumerator.Reset is an explicit implementation but Dispose is implicit... Note to self: never ever ever code a mutable struct.

    Read the article

  • Fiddler Inspector for Federation Messages

    - by Your DisplayName here!
    Fiddler is a very useful tool for troubleshooting all kinds of HTTP(s) communications. It also features various extensibility points to make it even more useful. Using the inspector extensibility mechanism, I quickly knocked up an inspector for typical federation messages (thanks for Eric Lawrence btw). Below is a screenshot for WS-Federation. I also added support for SAML 2.0p request/response messages: The inspector can be downloaded from the identitymodel Codeplex site. Simply copy the binary to the inspector folder in the Fiddler directory.

    Read the article

  • Google Buzz essuie les critiques de 10 pays, qui ont co-signé une lettre officielle

    Mise à jour du 22.04.2010 par Katleen Google Buzz essuie les critiques de 10 pays, qui ont co-signé une lettre officielle La Commission nationale de l'informatique et des libertés (CNIL) a suivi de très près le lancement de Google Buzz. Et, très vite, des mécontentements sont arrivés. C'est pourquoi, à peine deux mois après l'arrivée de ce nouveau service communautaire, la CNIL à envoyé un courrier plutôt salé à Eric Schmidt, CEO de Google. Mais la missive se veut encore plus générale, elle s'adresse à "toutes les entreprises en ligne" et leur demande de respecter "le droit à la vie privée des citoyens du monde". Co-signé par dix autorités de ...

    Read the article

  • CSS vendor prefixes redux

    Well, reactions to my proposal toabolish vendor prefixes are mixed, and I might have overshot my target here.Eric Meyer,Jonathan Snook, andStephen Hay reacted to my post,and it’s clear that they believe vendor prefixes ought to continue to exist. Manycommenters said the same thing, although some other commenters agreed with me.Daniel Glazman, W3C CSS co-chair, reactedin a similar vein, and agreed that there is something wrong with the current vendor prefiximplementation. He even welcomed the discussion....Did you know that DotNetSlackers also publishes .net articles written by top known .net Authors? We already have over 80 articles in several categories including Silverlight. Take a look: here.

    Read the article

  • A quoi servira le Conseil National du Numérique voulu par Sarkozy ? Un rapport publié ce matin en explique les grandes lignes

    A quoi servira le Conseil National du Numérique voulu par Nicolas Sarkozy ? Un rapport publié ce matin en explique les grandes lignes Mise à jour du 25.02.2011 par Katleen Ce matin, Pierre Kosciusko-Morizet a remis son rapport concernant la création du Conseil National du Numérique à Eric Besson. Cet organisme voulu par Nicolas Sarkozy devrait bientôt voir le jour : ?le Président de la République a fait part de son souhait d'avoir une mise en oeuvre rapide du Conseil national du numérique et sa création d'ici le printemps 2011?. Et pour ce faire, il faut savoir dans quelle direction aller. C'est dans cette optique qu'a été écrit le document cité plus haut, qui a pour but de dessiner ...

    Read the article

  • Movie Posters Revised as 8-Bit Masterpieces

    - by Jason Fitzpatrick
    If you like your movie posters to look a little more like Pac-Man and a little less like polished photography then this roundup of 8-bit movie posters is for you. Star Wars, Office Space, Kill Bill, 300, you’ll find all sorts of movie posters envisioned as 8-bit adventures om Eric Palmer’s gallery of 8-bit creations. 8-Bit Movie Posters [via Neatorama] How to Own Your Own Website (Even If You Can’t Build One) Pt 1 What’s the Difference Between Sleep and Hibernate in Windows? Screenshot Tour: XBMC 11 Eden Rocks Improved iOS Support, AirPlay, and Even a Custom XBMC OS

    Read the article

  • GDD-BR 2010 [1H] VC Panel: Entrepreneurship, Incubation and Venture Capital

    GDD-BR 2010 [1H] VC Panel: Entrepreneurship, Incubation and Venture Capital Speakers: Don Dodge, Eric Acher, Humberto Matsuda, Alex Tabor Track: Panels Time slot: H [17:20 - 18:05] Room: 1 Startups can be built and funded anywhere in the world, not just Silicon Valley. Venture Capital investors are investing in startups globally, and funding incubators to hatch their future investments. Find out how you can get into an incubator, or funded by a Venture Capitalist or Angel Investors. Learn from examples in the USA and hear from local VC investors in this panel discussion. Get your questions answered by real investors. From: GoogleDevelopers Views: 6 0 ratings Time: 37:39 More in Science & Technology

    Read the article

  • Google I/O 2010 - Connect enterprise apps w/ Google Docs

    Google I/O 2010 - Connect enterprise apps w/ Google Docs Google I/O 2010 - Connecting your enterprise applications with Google Docs and Sites Enterprise 201 Eric Bidelman, Vijay Bangaru, Matthew Tonkin (Memeo Inc) Learn how your organization can harness the power of Google Docs and Sites directly from within your existing enterprise systems using our extensive APIs. Integrate with data from behind the firewall using Secure Data Connector. Upload, share, collaborate, and sync any file to Docs. Even automate the creation of project and team workspaces in a single click in Sites from within your CRM. For all I/O 2010 sessions, please go to code.google.com From: GoogleDevelopers Views: 18 0 ratings Time: 53:19 More in Science & Technology

    Read the article

  • Healthcare Mobile Database Synchronization Demonstration

    - by Jim Connors
    Like many of you, I learn best by getting my hands dirty.  When confronted with the task of understanding a new set of products and technologies and figuring out how they might apply to a vertical industry like healthcare, I set out to create a demonstration.  The video that follows aims to show how the Oracle embedded software portfolio can be applied to a healthcare application.  The demonstration utilizes among others, Java SE Embedded, Berkeley DB, Apache Tomcat, Oracle 11gR2 and Oracle Database Mobile Server. Eric Jensen gives a great critique and description of the demo here.  To sum it up, we aim to show how live medical data can be collected on a medical device, stored in a local database, synchronized to a master database and furthermore propagated to a mobile phone (Android) application.  Come take a look!

    Read the article

  • Bouygues Telecom Gains a 360-Degree Overview of Customers and Improves Offer Acceptance Rates

    - by user511693
    With more than 10 million mobile customers and 500,000 landline customers, the mission of Bouygues Telecom is to become the premier mobile, landline, television, and internet brand in France, by focusing on customer acquisition, advice, service, and support. Project challenges included: Leverage every customer relationship and increase customer loyalty through personalized offers or promotions on landline or mobile phone contracts Build on marketing campaigns and take advantage of incoming contacts from the company’s call center, Web, and retail stores Improve acceptance rates of communication service offers “Thanks to Oracle’s Siebel CRM solutions and Oracle Real-Time Decisions, we can now meet customer requests faster, personalize offers to improve the services we provide, and gain feedback on responses to offers. This enhances our knowledge of our customers before our next contact with them, whether through the Web site, call center, or our Club retail stores.” – Eric Dobremer, IT Manager - Grand Public CRM Development, Bouygues Telecom Read about results here.

    Read the article

  • Pictures from VTdotNET VS2010 Launch

    Vermont.NET’s April meeting coincided with the Visual Studio 2010 launch so we had our own launch event! With cake… It was our biggest meeting attendance ever with 60 signed up and 56 signed in at the door. Four people presented…”some of our favorite things about VS2010 and .NET 4.0”. The presenters were Victor Castro, Eric Hall, Rob Hale and myself. Instead of the usual pizza, we had a feast of sandwiches, rollups, chips and veggies & dip, all very generously...Did you know that DotNetSlackers also publishes .net articles written by top known .net Authors? We already have over 80 articles in several categories including Silverlight. Take a look: here.

    Read the article

  • OpenWorld hands on labs: HOL9558, HOL9559 and HOL9870

    - by cpauliat
    In the upcoming event Oracle OpenWorld that will start in 2 days in San Francisco, Olivier Canonge, Simon Coter, Eric Bezille and I will run 3 hands on lab about Cloud using Oracle VM for X86 virtualization tool (details below) For each lab, a detailed document (in PDF format) explains all steps. If you don't have the opportunity to attend OpenWorld labs sessions, you can still run the labs at home or office using those documents. Lab 9558: Deploying Infrastructure as a Service (IaaS) with Oracle VM Session ID: HOL9558 Tuesday October 2nd, 2012, 10:15am – 11:15amLocation: Marriott Marquis - Salon 14/15PDF Document: part1 part2 part3 (right click and save link for each part then use winzip on file .001 to extract the PDF doc from the 3 zip files) Lab 9559: Virtualize and Deploy Oracle Applications Using Oracle VM Templates Session ID: HOL9559 Tuesday October 2nd, 2012, 11:45am – 12:45pmLocation: Marriott Marquis - Salon 14/15 PDF Document Lab 9870: x86 Enterprise Cloud Infrastructure with Oracle VM 3.x and Sun ZFS Storage Appliance Session ID: HOL 9870 Wednesday, 3 Oct, 2012, 5:00 PM - 6:00 PMLocation: Marriott Marquis - Salon 14/15 PDF Document: part1 part2 part3 (right click and save link for each part then use winzip on file .001 to extract the PDF doc from the 3 zip files)

    Read the article

  • Why is it always "what language should I learn next" instead of "what project should I tackle next"?

    - by MikeRand
    Hi all, Why do beginning programmers (like me) always ask about the next language they should learn instead of asking about the next project to tackle? Why did Eric Raymond, in the "Learn How To Program" section of his "How To Become A Hacker" essay, talk about the order in which you should learn languages (vs. the order in which you should tackle projects). Do beginning carpenters ask "I know how to use a hammer ... should I learn how to use a saw or a level next?" I ask because I'm finding that almost any meaningful project I'm interested in tackling (e.g. a web app, a set of poker analysis tools) requires that I learn just enough of a multitude of languages (Python, C, HTML, CSS, Javascript, SQL) and frameworks/libraries (wxPython, tkinter, Django) to implement them. Thanks, Mike

    Read the article

  • BeanInfo Editor in NetBeans Rocks

    - by Geertjan
    Impressed by a cool feature I didn't know about. If you have some JavaBean, like my Event class below, you can right-click it and choose "BeanInfo Editor": Now, as you can see above, I don't have a BeanInfo class. So I am now asked whether the IDE should create one for me. So I say OK and then I have a new BeanInfo class, generated from my Event class, as well as a multiview editor for visually editing the BeanInfo class: Thanks Eric and Nicklas from Artificial Solutions in Stockholm for pointing this out to me today. It comes in very handy in NetBeans Platform applications when you're working with a BeanNode and want to customize the display of your properties.

    Read the article

  • Is Domain Driven Design useful / productive for not so complex domains?

    - by Elijah
    When assessing a potential project at work, I suggested that it might be advantageous to use a domain driven design approach to its object model. The project does not have an excessively complex domain, so my coworker threw this at me: It has been said, that DDD is favorable in instances where there is a complex domain model (“...It applies whenever we are operating in a complex, intricate domain” Eric Evans). What I'm lost on is - how you define the complexity of a domain? Can it be defined by the number of aggregate roots in the domain model? Is the complexity of a domain in the interaction of objects? The domain that we are assessing is related online publishing and content management.

    Read the article

  • Hex Dump using LINQ (in 7 lines of code)

    Eric White has posted an interesting LINQ query on his blog that shows how to create a Hex Dump in something like 7 lines of code.Of course, this is not production grade code, but it's another good example that demonstrates the expressiveness of LINQ.Here is the code:byte[] ba = File.ReadAllBytes("test.xml");int bytesPerLine = 16;string hexDump = ba.Select((c, i) => new { Char = c, Chunk = i / bytesPerLine })    .GroupBy(c => c.Chunk)    .Select(g => g.Select(c...Did you know that DotNetSlackers also publishes .net articles written by top known .net Authors? We already have over 80 articles in several categories including Silverlight. Take a look: here.

    Read the article

  • Hadopi : le code de ses logiciels sécuritaires sera totalement open-source, de quoi ouvrir la porte aux éditeurs

    Hadopi : le code de ses logiciels sécuritaires sera totalement open-source, de quoi ouvrir la porte aux éditeurs La Hadopi vient de donner sa première conférence de presse de 2011. Son secrétaire général, Eric Walter, y a fait une annonce importante à propos des "logiciels de sécurisation" que l'Etat demandera prochainement aux internautes d'installer sur leurs machines, professionnels comme particuliers. Ces programmes seront différentes pour les SI et les installations domestiques, et ce sont les utilisateurs qui en auront le contrôlé, via notamment trois "journalisations" (enregistrement de l'activité d'un ordinateur sur Internet) différentes : une absence (ne pas créer de journalisation), une en claire et un...

    Read the article

  • Google I/O 2012 - Getting Direct Feedback from your YouTube Community

    Google I/O 2012 - Getting Direct Feedback from your YouTube Community Eric Lundberg, Jeffrey Posnick Do you want to hear from (and see!) your site's community? We will be sharing a new way to solicit videos from your users. Come and learn about how it was developed and see an example of it put to use as part of the YouTube Direct open source video submission platform. For all I/O 2012 sessions, go to developers.google.com From: GoogleDevelopers Views: 0 0 ratings Time: 40:44 More in Science & Technology

    Read the article

  • GDD-BR 2010 [2C] Building for a Faster Web

    GDD-BR 2010 [2C] Building for a Faster Web Speakers: Eric Bidelman Track: Chrome and HTML5 Time: C [12:05 - 12:50] Room: 2 Level: 151 Why should a web app be less performant than a native app? This session will focus on creating the next generation of web applications. We'll look HTML5 features that increase app performance, Chrome Developer Tools to speed development, Native Client for running native C++ in the browser, and Google Chrome Frame to bring these awesome features to users with older browsers. From: GoogleDevelopers Views: 84 1 ratings Time: 37:32 More in Science & Technology

    Read the article

  • Apps Script Office Hours - November 9, 2012

    Apps Script Office Hours - November 9, 2012 In this episode Ikai and Eric ... - Plugged the upcoming hackathon in Los Angeles. - Covered the release notes from the past week, which included some great enchancements to the Gmail and Drive services. - Discussed the new Google Cloud SQL integration in Apps Script. - Hyped the upcoming special episode with the creator of the "Google Analytics Report Automation (Magic)" script. - Answered questions about integrating Apps Script with Google Docs and Forms. The schedule of future episodes can be found at: developers.google.com From: GoogleDevelopers Views: 61 2 ratings Time: 31:24 More in Science & Technology

    Read the article

  • « Google pourrait ne plus exister dans cinq ans », la faute à Siri d'Apple d'après un analyste financier américain. Vraiment ?

    « Google pourrait ne plus exister dans 5 ans » La faute à Siri d'Apple d'après un analyste américain. Vraiment ? Les derniers mauvais résultats financiers de Google ? surtout plombés par Motorola ? n'ont pas tardé à susciter des vocations d'oracles alarmistes. Parmi ces nouveaux omniscients adeptes du catastrophisme, Eric Jackson, le créateur du fonds d'investissement Ironfire Capital spécialisé dans les technologies, ne fait pas dans la nuance. « Google pourrait disparaitre d'ici 5 à 8 ans comme Yahoo !, qui était le roi du search, a disparu », a-t-il ainsi déclaré à la chaîne financière CNBC. Cette disparition viendrait des usages mobiles. Les utilisateurs voudrai...

    Read the article

  • Aucun antivirus ne résiste aux attaques lancées lors du concours de hackers Pwn2kill : les éditeurs

    Aucun antivirus ne résiste aux attaques Lancées lors du concours de hackers Pwn2kill : que font les éditeurs de sécurité ? Ce n'est pas tellement le constat qui est étonnant. Après tout, arriver à déjouer un anti-virus n'est pas nouveau. C'est plutôt la facilité avec laquelle la quasi-totalité des participants au concours Pwn2kill y sont arrivés qui pose problème. Comme le souligne l'organisateur du concours, Eric Filiol, dans le résumé des exploits du concours de hackers Pwn2kill, les attaques contre 15 anti-virus n'étaient pas particulièrement originales. Bien au contraire, elle étaient toutes connues et répertoriées depuis 2 à 10 ans. Certai...

    Read the article

  • Faille zero-day découverte dans Internet Explorer, permettant de prendre à distance le contrôle d'un PC, Microsoft recommande EMET

    Faille zero-day découverte dans Internet Explorer permettant de prendre à distance le contrôle d'un ordinateur, Microsoft recommande EMET Une faille de sécurité critique dans Internet Explorer 6, 7, 8 et 9 vient d'être découverte par des experts en sécurité. Dans un billet de blog sur ZATAZ.com, Eric Romang, un conseiller en sécurité luxembourgeois, déclare avoir découvert la vulnérabilité lorsque son PC a été infecté par le cheval de troie Poison Ivy, qui est utilisé pour voler des données ou prendre le contrôle à distance d'un ordinateur. La faille pourrait être exploitée par des pirates distants qui peuvent obtenir les mêmes privilèges que l'utilisateur local, pour installer de...

    Read the article

  • Google I/O 2012 - The Web Can Do That!?

    Google I/O 2012 - The Web Can Do That!? Eric Bidelman The web is changing so quickly that it's hard to keep up with what's new in the platform. HTML5's new capabilities allow developers to build a whole new suite of applications - things that were once impossible to do, are now a reality. This session will walk you down the bleeding edge of HTML5 for 2012 by focusing on in-depth techniques, which solve real world challenges. We'll cover media capture, file I/O, advanced usage of websockets, media streaming, device input, multimedia, and modern css design. For all I/O 2012 sessions, go to developers.google.com From: GoogleDevelopers Views: 361 37 ratings Time: 43:07 More in Science & Technology

    Read the article

  • Register for the webcast, " Modernizing Applications - The Top IT Project" Wednesday, November 30, 9:00 a.m. PT / 12:00 p.m. ET

    - by Oracle Accelerate for Midsize Companies
      Due to the realities of the 'New Normal' economy, many midsize companies are replacing or upgrading their legacy enterprise applications. Larry Simcox, Sr. Director of the Oracle Accelerate Program Office, will lead a discussion on the 'why' and the 'how' featuring an impressive list of panelists:  Eric Kimberling, President & Chairman, Panorama Consulting Lyle Ekdahl, GVP & General Manager, Oracle's JD Edwards Enterprise Applications Jeanne Lowell, VP, Oracle's E-Business Suite Strategy. Click HERE to register.

    Read the article

< Previous Page | 40 41 42 43 44 45 46 47 48 49 50  | Next Page >