Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
Compare cell phone plans using Wirefly's innovative plan comparison tool ×
Microsoft Open Source Android Businesses The Almighty Buck Windows Your Rights Online IT

Microsoft Tries Hard To Play Nice With Open Source, But There's an Elephant In the Room 163

Esther Schindler writes: They're trying, honest they are. In 2016 alone, writes Steven Vaughan-Nichols, Microsoft announced SQL Server on Linux; integrated Eclipse and Visual Studio, launched an open-source network stack on Debian Linux; and it's adding Ubuntu Linux to its Azure Stack hybrid-cloud offering. That's all well and good, he says, but it's not enough. There's one thing Microsoft could do to gain real open-source trust: Stop forcing companies to pay for its bogus Android patents. But, there's too much money at stake, writes sjvn, for this to ever happen. For instance, in its last quarter, volume licensing and patents, accounted for approximately 9% of Microsoft's total revenue.
This discussion has been archived. No new comments can be posted.

Microsoft Tries Hard To Play Nice With Open Source, But There's an Elephant In the Room

Comments Filter:
  • by i.r.id10t ( 595143 ) on Friday March 18, 2016 @08:47AM (#51722001)

    But the patents aren't copyrighted code. Sure, they could create an implementation of the patented method and Freely license that code, so that anyone who licenses the patent could use that code as a reference/starting point/as-is. But freeing the patents could affect other products ...

    • Evidently a lot of companies able to play lots of lawyers have instead paid up in huge amounts. I don't know what the patents are but the poster didn't even give a clue about why they are bogus so for me the circumstantial evidence is on Microsoft's side for now

      • by afgam28 ( 48611 )

        Microsoft were forced to disclose these parents in a Chinese court. You can read about them here:

        http://arstechnica.com/tech-po... [arstechnica.com]

      • by Rob Y. ( 110975 ) on Friday March 18, 2016 @11:40AM (#51723729)

        There are plenty of examples of software patents that have been shown to be bogus based on prior art and rubber stamping 'inventions' that are simply not understood well enough by the P.O. employees to evaluate them properly. As a Slashdot reader, I assume you know this.

        But even if you allow that some software patents are truly valid, how do you assign a cost to licensing them? Microsoft is currently charging Android device makers as much to license their unspecified patents as they used to charge for their own OS, which implemented those patents - as well as a whole mess of other stuff, including y'know, an OS... These days they don't even charge for their own OS. So how can the courts support charging for someone else's implementation of a patent that has no monetary value? Okay, I guess there's some value to the ability to threaten to keep a competitors products off the shelves, but is that really what patent licensing was supposed to be about?

        • One of the big issues is that so much related to Prior Art is hidden from the USPTO or even the Software Community at large as people would work for company A, learn something while there, and then move to company B; company A would go under and company B (or C,....) would file a patent not realizing that the work really belonged to Company A. Company A would get the patent, but the 50 other people that knew of the "invention" from Company A and had been using it for years (again not necessarily realizing t
  • Huh? (Score:1, Interesting)

    by Anonymous Coward

    What do Android royalties have to do with Open Source? It's not open source coders who pay Android royalties. It's big cellphone companies. This is a very contrived opinion piece. Why not broaden the topic and talk about all the companies who milk open source for a profit and not just one. I.E. the most profitable company in IT who have the biggest margins they could narrow a bit...

    • Re:Huh? (Score:5, Insightful)

      by ConceptJunkie ( 24823 ) on Friday March 18, 2016 @10:35AM (#51723057) Homepage Journal

      Microsoft has been threatening Linux with patents for many years. That they are playing hardball with patents against Google is definitely relevant because they could decide to cripple the Linux world by tying it up with patent lawsuits. Even if every one of them were ruled not in Microsoft's favor, they could throw enough money and lawyers at the problem to cripple or destroy any company they wanted to, except other juggernauts like Google, Apple, Samsung, Sony, etc.

      So while the Android patents don't directly affect Open Source, they do show that Micosoft could do tremendous amounts of damage to Open Source should it choose.

      It's a good sign that MS appears to be trying to play nice with the Open Source world, and to contribute to it as well, but no one can, nor should, forget about the previous 30 years of Microsoft's behavior. They should be earning some good will for these efforts, but there's a long, long way to go before they should earn the trust of the Open Source world, or to even prove that their intention is more than just to put up a screen of "nice" behavior to cover up their more nefarious, ant-competitive practices.

      • Android is open source and it isn't just big cell phone companies that modify and develop it. It's installed in plenty of arm based devices beyond cell phones. Just because they aren't attacking open projects (other than Google at the source) doesn't mean they won't or can't.

        If they are committed to open source then they must be opposed to software patents. The only logical course is to turn their software patent portfolio over in the same manner IBM did and help build the war chest to defend against patent
    • Android is an open source system that runs on phones, tablets, and HTPC builds using ARM cpus. People can and do develop and modify the system and replace what is provided by any cell company or manufacturer.

      Open source software should not be encumbered with potential patent threats, whether Microsoft is currently milking the patents or not is beside the point because they are always the silent borg letting people put more and more effort and resources into something then pull a SCO attempt and strike.

      There
    • by sjames ( 1099 )

      Because if they'll demand money for obvious solutions implemented in Android, they'll demand it for obvious solutions to problems you devise as well. They have effectively made Android less free. If you modify Android and put it out there, MS lawyers will sooner or later darken your doorstep.

    • by HiThere ( 15173 )

      The Android royalties are based around threats of suits for undisclosed patents. Whenever any specific one of them has been disclosed (see China) it has turned out to be either trivially work around-able or intrinsically invalid (i.e., invalid when issued because of, e.g., prior art). But if they don't tell you what the patent is, you can't avoid it, and a lawsuit to expose the patent as invalid it too expensive for most companies to afford AND too dangerous to risk. (Courts have made some very peculiar

  • by MikeRT ( 947531 ) on Friday March 18, 2016 @09:02AM (#51722135)

    Nadella would be sacked within a week if he did that. Not only that, but he would probably get sued for taking an action that traded a billion or two dollars of pure profit for "good will." From a fiduciary responsibility perspective, it would be just cut and dry.

    • I don't want to be either a Microsoft apologist or patent troll but I used to work in the chemical industry and was involved with several patents and getting patents is a very cost intensive process. Patent lawyers don't come cheap.
      • A patent give one a license to in-rich one's lawyer.

      • Re:It can't happen (Score:4, Interesting)

        by Rob Y. ( 110975 ) on Friday March 18, 2016 @11:51AM (#51723881)

        Perhaps. But your chemical patents were patents on actual inventions that your company, presumably, intended to manufacture and sell. Microsoft's patents are on ideas that are not particularly inventive - or original, and intended largely to stifle competition. The granddaddy of Microsoft moneymaking patents is the one they have on the FAT32 long/short filename setup. That patent is not there to prevent someone else from designing a crazy long/short filename scheme. It's there because that scheme is used by Windows, and anyone who wants their removable storage device to work with Windows PC's is pretty much forced to use it. So that patent was applied for and those lawyers were paid in order to enable extortion based on a form of monopoly tying that shouldn't be allowed in the first place.

        If the software in question were significant enough to get people to pay for it instead of implementing it themselves, Microsoft could sell that software instead of extorting patent royalties. In the case of Windows itself, that's true. Anyone who wants Windows functionality has to pay Microsoft for the copyrighted OS software. Anyone who simply wants to plug an SD card into their Android device can use free software to do that.

        • Definitely not arguing for software patents. But as long as this is the industry standard, Microsoft is going to invest money in these kinds of patents and expect some kind of return.
        • by Megol ( 3135005 )

          If one can apply for the right to use the patent for a reasonable sum of money then it _isn't_ a monopoly. That is the case here.

          A better example would be the use of the exFAT filesystem on larger capacity SD Cards but even then calling it a monopoly would be wrong.

          • by sjames ( 1099 )

            Unless you can apply to a vendor of your choice, it is a monopoly. In fact, you can only apply to one entity.

        • by sjames ( 1099 )

          Even worse, although mostly forgotten, the linux filesystem UMSDOS implemented long filenames and more. That eviscerates the claim that long filenames were in any way non-obvious.

      • They cost between $5k and $30k. Microsoft is making billions off them. They have already made their money back.

        Anyway a lot of the patents expire by the end of the decade, so it becomes a smaller and smaller issue.
    • "he would probably get sued for taking an action that traded a billion or two dollars of pure profit for "good will." From a fiduciary responsibility perspective, it would be just cut and dry."

      Cut and dry, but not in your direction at all. Nadella might be sued, but he would definitely win.

      Corporate fiduciary responsibility does in no way mean that a business decision must maximize short term profits.

      The Business Judgment Rule [wikipedia.org] means that unless Nadella had self-interest, self-dealing or operated in ba

  • With MS-SQL Server on Linux - just install FreeTDS and connect to your old MS-SQL server so that you can port all the data into MySQL or Postgres.
    • You do know MS changed their licensing for SQL Server to match Oracle with per core (not cpu) licensing, plus seat licensing, and I would not be surprised if the Linux version of MS SQL Server only works on Azure where you pay a cloud service fee too!

      Sure it is available. Maybe free for fun for non commercial or low cost if you rent it out from Azure for just you.

      It is not free.

      That is fine for an enterprise as you can argue a return on investment where an outage has financial consequences but for us geeks.

    • by DeBaas ( 470886 )

      because of Oracle...

      In many organisations for whatever reason the choice is often limited to MS-SQL and Oracle. Also many applications you can buy support MS SQL or Oracle.
      In corporate dollars, running it on Linux can be a lot cheaper. The license costs are not so much the issue. If you have a good Unix team, maintenance costs per server can be a lot cheaper.
      And if OS is not a factor, MS SQL vs Oracle can be very tempting. Technically Oracle may be ahead, but their license schemes would make Tony Soprana bl

  • by jones_supa ( 887896 ) on Friday March 18, 2016 @09:04AM (#51722147)
    In other news, Slashdot seems to finally have enabled HTTPS for everyone. Thanks!
  • by westlake ( 615356 ) on Friday March 18, 2016 @09:07AM (#51722173)

    There's one thing Microsoft could do to gain real open-source trust: Stop forcing companies to pay for its bogus Android patents.

    The geek never sounds more adolescent then when he whines about Microsoft cross-licensing patents with its major corporate partners, It happens all the time and these guys are big enough and old enough to take care of themselves.

    • by andydread ( 758754 ) on Friday March 18, 2016 @09:25AM (#51722351)
      Software patents should be outlawed. The US Supreme Court seems to take a dim view on software patents. Code that allows text to render before images is not innovation. Telling you that I own any code you write that enables a specific feature such as that is not innovation its extortion...legalized extortion. Software patents for simple features like that should have never been applied for and should have never been granted. Microsoft abuses patents on software in an effort to stifle open-source in the marketplace. They have even warned that this is the method they will use against Linux and they have been executing that plan for a while now. It's not just Android it's any device that runs Linux. They have been using fat patents against Linux device makers for a while now. Companies like the NAS maker Buffalo which uses Linux on their devices and have nothing to do with Android has to pay up.
      • by godefroi ( 52421 )

        Yep, software patents should go. I say this as a guy who currently holds two software patents. However, until that happens, it's the responsibility of the corporate officers to extract value from the patents that a corporation holds. So, lobby for change in patent law, but don't blame Microsoft for acting like a corporation.

        • Ah yes, the argument to support sociopathic behavior. "It's, like, totally legal, so companies should just go out and do it."

          The fact that very large companies use their financial clout to get legislators to perpetuate and even enlarge the influence of IP doesn't factor into this at all?

        • by sjames ( 1099 )

          It is the responsibility of corporate officers to make sure the corporation is in the public interest. That is rarely enforced but it is part of the bargain.

          • by godefroi ( 52421 )

            Sure, but who's to say that software patents aren't in the public interest? Yes, you and I, but we're hardly the majority, aren't we? All those people receiving paychecks thanks to the patent license fees might have different views...

            • by sjames ( 1099 )

              And all of those not getting hired because of paying patent fees might disagree. So might everyone paying more for products to cover the patent fees.

              Plus, if the patent royalties are demanded after the fact when someone easily (even accidentally) re-invents the patent, it is pure economic rent, which is generally agreed to be harmful to the economy.

    • Re: (Score:2, Insightful)

      by ilguido ( 1704434 )
      And here I always thought that a sane market, not encumbered by extortion and bullying, would benefit _consumers_. Silly me.
      • You are confusing a 'free market' with what we really have: 'cartel socialism' which benefits only the political elite(both parties are full of dirty, corrupt, garbage ).

    • by sjames ( 1099 )

      Robbing the liquor store happens all the time too. That doesn't make it OK.

  • At this point, a large part of IT simply will never appreciate Microsoft, no matter what they do.

    "We'd trust them if they'd only do X!" No, you wouldn't. You'd figure out some other reason to hate them.

    News flash, it's 2016, and Microsoft is no longer the most evil or dangerous bigcorp out there. Apple, Google, and Facebook, have all surpassed Microsoft. Can we get back to some actual issues?

    • Re: (Score:2, Insightful)

      by drinkypoo ( 153816 )

      At this point, a large part of IT simply will never appreciate Microsoft, no matter what they do.

      It would take a spectacular fucking idiot to trust Microsoft at this point. Are you a spectacular fucking idiot? Because only spectacular fucking idiots trust Microsoft.

      Microsoft has proven time and again that they will abuse their customer base, the law, and anything else that stands in the way of profit. People who give them money are part of the problem.

      ObDisclaimer: I paid for Win 7. I still feel dirty about it.

    • Re: (Score:2, Insightful)

      by ilguido ( 1704434 )

      At this point, a large part of IT simply will never appreciate Microsoft, no matter what they do.

      "We'd trust them if they'd only do X!" No, you wouldn't. You'd figure out some other reason to hate them.

      News flash, it's 2016, and Microsoft is no longer the most evil or dangerous bigcorp out there. Apple, Google, and Facebook, have all surpassed Microsoft. Can we get back to some actual issues?

      I don't think that there's anything more evil than the whole UWP (Universal Windows Platform) plan by 2016 Microsoft. Since UWP comprises W10, Xbox, Mobile and Server, it's basically everything MS is doing right now, can you be more evil than that?

      Oh yeah, it doesn't include older windows versions, but perhaps you've heard about the ridiculous push to adopt W10.

      • "Since UWP comprises W10, Xbox, Mobile and Server, it's basically everything MS is doing right now, can you be more evil than that?"

        yet, if Apple or Google built a universal OS for desktop, server, mobile and stand alone devices, it would be hailed as innovative and visionary, done for the most benevolent reasons and all profits would go to caring for abandoned puppies...

        UWP has issues, especially for gamers. But Evil?? You need to turn on your TV or read a newspaper before throwing that word around so c
        • if Apple or Google built a universal OS for desktop, server, mobile and stand alone devices, it would be hailed as innovative and visionary...

          If Apple did that it might actually work.

          (Google might be able to make it work, but nobody would be able to fight through the UI to find out).

      • God yeah, a plan to offer a set of libraries that work across multiple platforms and sandboxing to avoid 30 years of criticism about malware. What fucking assholes.

        Sorry, but warning people about installing software without a valid signed certificate is the world we live in. There is no way around it. You can sideload UWP apps more easily than any other similarly secure platform so it's not even the most draconian system. And the security certificates are free. I've developed 4-5 UWP apps and I've nev

    • by UnknowingFool ( 672806 ) on Friday March 18, 2016 @09:35AM (#51722467)

      News flash, it's 2016, and Microsoft is no longer the most evil or dangerous bigcorp out there. Apple, Google, and Facebook, have all surpassed Microsoft. Can we get back to some actual issues?

      We would like to forget of all the evil that Microsoft does but it keeps reminding us. [slashdot.org]

    • A few years ago I would say you had a point but after Windows 10 debacle I think they have earned a lot of hate.
    • by swb ( 14022 )

      It's almost like you have to hate Apple because they have shown Microsoft a path that enables them to make their products more controlled and more locked in -- walled garden web stores, forced software updates, touch-centric user interfaces.

    • by HiThere ( 15173 )

      I could see arguments that Comcast is more evil than Microsoft, but for all the others you named, I have to think you are turning a blind eye to the evils (plural, large in number, both distant past, recent past, and on-going) done by Microsoft.

      P.S.: I'm not whitewashing any of those others you mentioned, but I haven't seen any information that puts them even temporarily level up to Microsoft in the evil department.

  • by Kkloe ( 2751395 ) on Friday March 18, 2016 @09:11AM (#51722211)
    I dont understand what the android patent(s) has anything to do with open source...
    • by rastos1 ( 601318 ) on Friday March 18, 2016 @09:33AM (#51722447) Homepage

      It raises cost of FOSS from zero to cost of FAT license. And you can't just drop FAT support because it has a monopoly (as in "dominant") position on the market.

      • I wonder if they could pull something like having it not ship with FAT support, but the first time you install a FAT-formatted storage device it would ask you if you want to download and install it.
      • by HiThere ( 15173 )

        It's not that simple. You can't avoid an unspecified patent, so when Microsoft comes up and says "Nice business you've got there, be a pity if something were to happen to it." and accuses you of violating a patent, but won't tell you what patent, well...

        FAT could be avoided, but it wouldn't help. You license the patent they want you to license at the price they want to charge, or else.

  • by Marginal Coward ( 3557951 ) on Friday March 18, 2016 @09:12AM (#51722233)

    TFA has an interesting but unlikely premise: Microsoft cares about the "trust" of the open source community. Why should they? Isn't the whole idea of open source (with a suitable license) supposed to be that you don't have to trust the originator of the software? For example, open source is often cited as a solution for the problem that the originator goes belly-up. Fine, just maintain it yourself or with the help of the community.

    Besides, why should Microsoft care about the "trust" of the people they're giving stuff to? First, it's unlikely they they will ever gain the trust of those who forever view them as The Evil Empire. Second, they've already got the trust (by and large) of their paying customers, much as a male black widow spider trusts the female: trust her, but don't become lunch.

    For example, I have a large body of software I've developed over the past 20 years that's written for Microsoft's "MFC." (Seemed like a good idea at the time...) I trust them to keep supporting that (as they have for 20 years), and I also trust that they'll make me buy a new version of Visual Studio every few years when the old one no longer works on modern versions of Windows. (Been there, done that.) That sort of trust is called "business."

    • by bug1 ( 96678 )

      Trust in open source is based on quality.
      Trust in business is based on quantity.

    • How little do you make as a software developer that it isn't worth buying the tools that you need?

      If you work for any decent size company you probably have an MSDN license and all of the development tools come with it.

      For that matter if I were an independent consultant, I would buy my own MSDN license.

      • How little do I make? Suffice it to say, it's a sad story. I don't worry about having to pay $700 or so for MSVC every five years. The bigger problem of running a home business on the small scale that I do is having to fill out a couple of dozen tax forms every year. For example, the state I live in makes me pay unemployment tax in case I ever get laid off from my one-man home business.

    • That's trusting the code, not trusting the company. We still can't trust MS to not sue people making FOSS (even based off their own FOSS products) if they hold a patent over something.
      • Hmmm...I hadn't thought about that. Heck, I thought they were releasing their software under a liberal open source license because they wanted people to use and develop the software as part of their larger business model - not as some sort of devious trap.

        Now that you mention it, though, I can see how naive this "Occam's Razor" [wikipedia.org] sort of thinking really is. After all, Richard, they are The Evil Empire...

  • The Microsoft development community and open source are doing just fine these days. Nuget and git have changed the world - especially in corporate Microsoft shops.
    • I really don't like Nuget, as package management systems go, it's a real pain. And it's not just me saying it, this guy admits it has problems too [youtube.com].

      (You're right though, it definitely has changed things in Microsoft shops).
  • by LifesABeach ( 234436 ) on Friday March 18, 2016 @09:43AM (#51722541)
    I am reminded of what the scorpion said, "Why? Because I am a Scorpion."
  • Something doesn't add up. Aside from the question of whether Microsoft's licensing of patents to Android OEMs has any impact on whatever else they may do with open source, I find it hard to believe that Microsoft is successfully extracting billions annually from "bogus" patents.

    Yes, litigation is difficult, expensive and time-consuming. But if the patents really are bogus, it's well worth spending a few hundred million over a few years in order to stop paying billions annually. Samsung et al, may not wish

  • ... are there any substantial reasons that developers still choose Eclipse over Netbeans other than philosophical or personal issues such as personally preferring SWT as opposed to Swing, or simply because that might happen to be what they are used to?

    I'm particularly curious about this with respect to *current* Eclipse and Netbeans versions, not those of years long since past.

  • Their goal as a publicly-traded corporation is to make money. Why would they ever give up a huge stream of revenue that they "earn" simply by signing a bunch of legal paperwork every few years?

    Unless there is a clear way for "real open-source trust" to turn into American dollars, it will never happen. Even good things like marketing, perception, and outreach have little value compared to cold cash; in fact, those things are pursued solely because they tend to bring in money in the future.

    I agree with the op

  • If Microsoft want Linux people to trust them they have a lot of ground to make up. And they claim they want this for Azure. Here are a few little things:

    1/ Stop loading standards committee with your goons, then back genuine open document standards. Thereby showing you embrace openness and want your products to compete on features not just lock-in.

    2/ Stop deprecating the few Linux desktop products you have or give them limited functionality (e.g. Skype) . Okay so you are interested in Linux on a server. But
    • by HiThere ( 15173 )

      Those actions would help, but the real thing they need to do is stop doing things like that from now on. At this point I look at the way they treat their own customers who don't want to upgrade to MSWind 10, and say "Why should I even consider working with someone who acts like that?".

      It's no longer even just that I can't trust them, it's that I CAN, and what I can trust them to do.

  • I think it's time for them to GPLv3 windows 10. Then it will be the year of the HURD desktop, for sure.
  • by Freshly Exhumed ( 105597 ) on Friday March 18, 2016 @02:33PM (#51725931) Homepage

    Microsoft's 310 Patent Claims on Android
    Text Dump of an original Chinese Government Document Freely available here:
    http://images.mofcom.gov.cn/pe... [mofcom.gov.cn]
    Format of this list:
    List Example Number Patent Number Patent Application Title

    SEPs Generally Implemented by Smartphones
    001 5634192 Mobile-Assisted Handoff Technique
    002 5982324 Combining GPS With TOA/TD0A Of Cellular Signals To Locate Terminal
    003 6058309 Network Directed System Selection for Cellular and Pcs Enhanced Roaming
    004 6088578 Burst Request Method and Apparatus for Cdma High Speed Data
    005 6091952 Distributed Subscriber Data Management in Wireless Networks from a Central Perspective
    006 6223028 Enhanced Method And System For Programming A Mobile Telephone over the Air Within A Mobile Telephone Communication Network
    007 6298461 Encoding and Decoding Methods and Apparatus
    008 6324515 Method and Apparatus for Asymmetric Communication of Compressed Speech
    009 6363251 Network Directed System Selection for Cellular and Pcs Enhanced Roaming
    010 6411629 Data Interleaving Method
    011 6430174 Communication System Supporting Simultaneous Voice and Multimedia Communications and Method of Operation Therefore
    012 6438369 Network Directed System Selection for Cellular and Pcs Enhanced Roaming
    013 6549771 Enhanced Method And System For Programming A Mobile Telephone over the Air Within A Mobile Telephone Communication Network
    014 6628641 Header Error Detection For Wireless Data Cells
    015 6738618 Method and System for Regulating Autonomous Messaging by Subscriber Units in a Wireless Communication Network
    016 6880088 Secure Maintenance Messaging In a Digital Communications Network
    017 6947483 Method, Apparatus, and System for Managing Data Compression in a Wireless Network
    018 6947490 Cellular Radio Communications System
    019 7042858 Soft Handoff for OFDM
    020 7072336 Communications Using Adaptive Multi-Rate Codecs
    021 7082114 System and Method for a Wireless Unit Acquiring a New Internet Protocol Address When Roaming Between Two Subnets
    022 7145889 Efficient Frame Retransmission in a Wireless Communication Environment
    023 7228133 Mobile IP Mobile Node Device and Access Information
    024 7317680 Channel Mapping for OFDM
    025 7436834 Efficient Frame Retransmission in a Wireless Communication Environment
    026 7440433 Mobile IP Notification
    027 7486735 Sub-Carrier Allocation For OFDM
    028 7545766 Method for Mobile Node-foreign Agent Challenge Optimization
    029 7646710 Mobility in a Multi-Access Communication Network
    030 8046000 Providing Location-Based Information in Local Wireless Zones
    031 8264996 Signalling Channel and Radio System for Power Saving in Wireless Devices
    032 6298463 Parallel Concatenated Convolutional Coding
    033 6782422 Systems and Methods for Resynchronization and Notification in Response to Network Media Events
    034 7016705 Reducing Power Consumption in a Networked Battery-Operated Device Using Sensors
    035 7089415 Authentication Methods and Systems for Accessing Networks, Authentication Methods and Systems for Accessing the Internet
    036 7099689 Energy-Aware Communications for a Multi-Radio System
    037 7110783 Power Efficient Channel Scheduling in a Wireles Network
    038 7142855 Power Efficient Channel Scheduling in a Wireles Network
    039 7187660 System and Method for Continuously Provisioning a Mobile Device
    040 7203463 Power Efficient Channel Scheduling in a Wireles Network
    041 7209740 Power Efficient Channel Scheduling in a Wireles Network
    042 7230933 Reducing Idle Power Consumption in a Networked Battery Operated Device
    043 7245936 Power Efficient Channel Scheduling in a Wireles Network
    044 7284062 Increasing The Level of Automation When Provisioning A Computer System to Access A Network
    045 7295522 System and Method for Continuously Provisioning a Mobile Device
    046 7376122 System and Method for Link Quality Source Routing
    047 7433936 Connectivity Objects Under A Mobile Device Management Tree
    048 7505756 Dynamic Online Subscription for Wireless Wide-Area Networks
    049 7529197 System and Method for Continuously Provisioning a Mobile Device
    050 7539508 Reducing Idle Power Consumption in a Networked Battery Operated Device
    051 7577125 Direct Wireless Client to Client Communication
    052 7613426 Proximity Service Discovery in Wireless Networks
    053 7673325 Configuration Of Wifi Network Parameters
    054 7743408 Secure Association And Management Frame Verification
    055 7969954 Direct Wireless Client to Client Communication
    056 8270965 SIGNALING OVER CELLULAR NETWORKS TO REDUCE THE WI-FI ENERGY CONSUMPTION OF MOBILE DEVICES
    057 8358975 SIGNALING OVER CELLULAR NETWORKS TO REDUCE THE WI-FI ENERGY CONSUMPTION OF MOBILE DEVICES
    058 8478300 Proximity Service Discovery in Wireless Networks
    059 8559350 Mechanism To Convey Discovery Information In A Wireless Network
    060 6563953 Predictive Image Compression Using a Single Variable Length Code for both the Luminance and Chrominance Blocks for Each Macroblock
    061 6735345 Efficient Macroblock Header Coding for Video Compression
    062 6912584 Media Coding for Loss Recovery with Remotely Predicted Data Units
    063 7120197 Motion Compensation Loop With Filtering
    064 7149247 Methods and Systems for Encoding and Decoding Video Data to Enable Random Access and Splicing
    065 7162091 Intra Compression of Pixel Blocks Using Predicted Mean
    066 7181072 Intra Compression of Pixel Blocks Using Predicted Mean
    067 7263232 Spatial Extrapolation Of Pixel Values For Intraframe Video Coding And Decoding
    068 7289673 Predictive Image Compression Using a Single Variable Length Code for both the Luminance and Chrominance Blocks for Each Macroblock
    069 7505485 Methods and Systems for Start Code Emulation Prevention and Data Stuffing
    070 7577305 Spatial Extrapolation Of Pixel Values For Intraframe Video Coding And Decoding
    071 7593466 Generalized Reference Decoder for Image or Video Processing
    072 7646816 Generalized Reference Decoder for Image or Video Processing
    073 7839895 Methods and Systems for Start Code Emulation Prevention and Data Stuffing

    Patents Implemented in Android
    074 6604144 Data Format for Multimedia Object Storage, Retrieval and Transfer
    075 6269403 Browser and Publisher for Multimedia Object Storage, Retrieval and Transfer
    076 5778372 Remote Retrieval and Display Management of Electronic Document with Incorporated Images
    077 6785865 Organizing Document Hyperlinks on a List Based on Their Respective Location in a Document
    078 6339780 Loading Status in a Hypermedia Browser Having a Limited Available Display Area
    079 6822664 Browser Navigation for Devices With a Limited Input System
    080 7454718 Browser Navigation for Devices With a Limited Input System
    081 7421666 Browser Navigation for Devices With a Limited Input System
    082 7596760 System and Method for Selecting a Tab Within a Tabbed Browser
    083 7831547 Searching and Browsing URLs and URL History
    084 8166390 Figure Sizing And Positioning On Dynamic Pages
    085 6240360 Computer System for Identifying Local Resources
    086 6891551 Selection Handles in Editing Electronic Documents
    087 6909910 Method and System for Managing Changes to a Contact Database
    088 5813013 Representing Recurring Events
    089 6073137 Improved Method for Updating and Displaying the Hierarchy of a Data Store
    090 7191159 Transmitting Information Given Constrained Resources
    091 7024214 Synchronizing Over a Number of Synchronization Mechanisms Using Flexible Rules
    092 7493130 Synchronization Over a Number of Synchronization Mechanisms Using Flexible Rules
    093 7499942 Modeling Recurring Events In A Data Store
    094 6356956 Time-triggered portable data objects
    095 7685116 Transparent Search Query Processing
    096 7050408 Communicating Multi-Part Messages Between Cellular Devices Using a Standardized Interface
    097 7689649 Rendering destination instant messaging personalization items before communicating with destination
    098 5982298 Interactive Traffic Display and Trip Planner
    099 5864337 Method for Automatically Associating Multimedia Features with Map Views Displayed by a Computer-Implemented Atlas Program
    100 6065003 A System and Method for Finding the Closest Match of a Data Entry
    101 6968179 Place-Specific Buddy List Services
    102 7668537 Place-Specific Buddy List Services
    103 7213048 Context Aware Computing Devices and Methods
    104 7490003 System and Method for Providing a Location Snapshot Service and Associating a Snapshot With Location Container Data
    105 7650431 SERVING LOCALLY RELEVANT ADVERTISEMENTS
    106 7840032 Street Side Maps And Paths
    107 7777648 MODE INFORMATION DISPLAYED IN A MAPPING APPLICATION
    108 8255379 CUSTOM LOCAL SEARCH
    109 8214759 Taskbar music player
    110 7337389 System and Method for Annotating an Electronic Document Independently of its Content
    111 6799047 Locating and Tracking a User in a Wireless Network Through Environmentally Profiled Data
    112 7162466 System and Method for Filtering and Organizing Items Based on Common Elements
    113 7519900 System And Method For Processing Digital Annotations
    114 7868786 Parsing Location Histories
    115 8239783 Integrated Viewfinder and Digital Media
    116 7707197 System and method for filtering and organizing items based on common elements
    117 5845077 A Method and System for Identifying and Obtaining Computer Software From a Remote Computer
    118 6957233 Method and apparatus for capturing and rendering annotations for non-modifiable electronic content
    119 6901559 Method and Apparatus for Providing Recent Categories on a Hand-Held Device
    120 7072461 Merging Various Request Methods Into a Single Unified User Interface
    121 7873356 Search Interface For Mobile Devices
    122 8320549 ADVANCED CALL ROUTING USING LINKED IDENTITIES
    123 6226367 Calling Line Identification with Location Icon
    124 6526129 System and Method for Communication Media Management
    125 5517257 Video Control User Interface for Interactive Television Systems and Method For Controlling Display of a Video Movie
    126 5648824 Video Control User Interface for Controlling Display of a Video
    127 5677708 System for displaying a list on a display screen
    128 6868551 Interactive Program Summary Panel
    129 6449766 System and Method for Consolidating Television Rating System
    130 7200611 TV Program Database
    131 7202893 Method and Apparatus for the Display of Still Images from Image Files
    132 7159188 System and Method for Navigating Content in an Item
    133 7427941 State-Sensitive Navigation Aid
    134 7583220 State-Sensitive Navigation Aid
    135 7671782 State-Sensitive Navigation Aid
    136 6578054 Network System For Synchronizing Resource Stored in the Server Based on the Resource State Information Transmitted from the Client
    137 6370566 Generating Meeting Requests and Group Scheduling from a Mobile Device
    138 7133909 Systems and Methods for Locating Mobile Computer Users in a Wireless Network
    139 7590720 Systems and Methods for Locating Geographical Regions of Mobile Computer Users
    140 7558851 Locating a Mobile Computing Unit
    141 5982324 Combining GPS With TOA/TD0A Of Cellular Signals To Locate Terminal
    142 6209011 Handheld Computing Device with External Notification System
    143 6374277 Handheld Computing Device With External Notification System
    144 7644376 Flexible architecture for notifying applications of state changes
    145 6374276 Handheld computing device with external notification system
    146 6321275 Interpreted Remote Procedure Calls
    147 6748481 Streaming Information Appliance with Buffer for Time Shifting
    148 7039801 System and Method for Integrating Secure and Non-Secure Software Objects
    149 7650493 System and Method for Integrating Secure and Non-Secure Software Objects
    150 7356836 User Controls For A Computer
    151 7369850 Connectivity Notification Displaying Path to Connection
    152 8155624 Automatic Wireless Device Message Management Responsive To End User Preferences
    153 7865924 Providing Input and Output for a Mobile Device
    154 6360364 System and method for installing an application on a portable computer
    155 6094679 Distribution of Software in a Computer Network Environment
    156 6252589 Multilingual User Interface For An Operating System
    157 6826762 Radio Interface Layer in a Cell Phone with a Set of APIs Having a Hardware-Independent Proxy Layer and a Hardware-Specific Driver Layer
    158 6819315 Soft input panel system and method
    159 7411582 Soft input panel system and method
    160 5889522 System Provided Child Window Controls
    161 5673401 System & Methods for a Customizable Sprite-Based Graphical User Interface
    162 5877765 Method and System for Displaying Internet Shortcut Icons on the Desktop
    163 6091409 Method and System for Providing Internet Shortcut Icons on the Desktop
    164 6421694 System and Method for Displaying Data Items in a Ticker Display Pane on a Client Computer
    165 7533352 Method And Apparatus For Providing Context Menus On A Hand Held Device
    166 6594682 Client-Side System for Scheduling Delivery of Web Content and Locally Managing the Web Content
    167 6654733 Fuzzy Keyboard
    168 8230359 System And Method That Facilitates Computer Desktop Use Via Scaling Of Displayed Objects With Shifts To The Periphery
    169 7221331 Method and System for Auxiliary Display of Information for a Computing Device
    170 7554529 Smart Soft Keyboard
    171 7692629 Operating Touch Screen Interfaces
    172 6897853 High-level Active Pen Matrix
    173 6791536 Simulating Gestures of a Pointing Device Using a Stylus and Providing Feedback Thereto
    174 7441204 Method and system for automatically displaying content of a window on a display that has changed orientation
    175 RE40989 Atomic Operations on Data Structures
    176 7383460 Method And System For Configuring A Timer
    177 6621746 Monitoring Entropic Conditions of a Flash Memory Device as an Indicator for Invoking Erasure Operations
    178 5652913 System For Providing Intercommunication Of I/O Access Factors Stored In A Shared Data Structure, Accessed And Maintained By Both File System And Device Driver
    179 6832273 System and Method to Specify Extended Configuration Descriptor Information in USB Devices
    180 7093031 System and Method to Specify Extended Configuration Descriptor Information in USB Devices
    181 7137117 Dynamically Variable Idle Time Thread Scheduling
    182 5784628 Controlling power consumption in a computer system
    183 6735345 Efficient Macroblock Header Coding for Video Compression
    184 7289673 Predictive Image Compression Using a Single Variable Length Code for both the Luminance and Chrominance Blocks for Each Macroblock
    185 6912584 Media Coding for Loss Recovery with Remotely Predicted Data Units
    186 7734821 Media Coding for Loss Recovery with Remotely Predicted Data Units
    187 7162091 Intra Compression of Pixel Blocks Using Predicted Mean
    188 7646816 Generalized Reference Decoder for Image or Video Processing
    189 7593466 Generalized Reference Decoder for Image or Video Processing
    190 7263232 Spatial Extrapolation Of Pixel Values For Intraframe Video Coding And Decoding
    191 7577305 Spatial Extrapolation Of Pixel Values For Intraframe Video Coding And Decoding
    192 7120197 Motion Compensation Loop With Filtering
    193 7505485 Methods and Systems for Start Code Emulation Prevention and Data Stuffing
    194 7149247 Methods and Systems for Encoding and Decoding Video Data to Enable Random Access and Splicing
    195 7839895 Methods and Systems for Start Code Emulation Prevention and Data Stuffing
    196 7685305 Media Coding for Loss Recovery with Remotely Predicted Data Units
    197 7181072 Intra Compression of Pixel Blocks Using Predicted Mean
    198 8090574 Entropy Encoding and Decoding Using Direct Level And Run-Length / Level Context-Adaptive Arithmetic Coding/Decoding Modes
    199 6563953 Predictive Image Compression Using a Single Variable Length Code for both the Luminance and Chrominance Blocks for Each Macroblock
    200 6252610 Method and Apparatus for Efficiently Switching State in a Graphics Pipeline

    Other "non-SEPs"
    201 5579517 Common Name Space for Long and Short Filenames
    202 5758352 Common Name Space for Long and Short Filenames
    203 7383460 Method And System For Configuring A Timer
    204 6339780 Loading Status in a Hypermedia Browser Having a Limited Available Display Area
    205 6826762 Radio Interface Layer in a Cell Phone with a Set of API's Having a Hardware-Independent Proxy Layer and a Hardware-Specific Driver Layer
    206 5889522 System Provided Child Window Controls
    207 5664133 Context Sensitive Menu System/Menu Behavior
    208 7644376 Flexible Architecture for Notifying Applications of State Changes
    209 6374276 Handheld Computing Device with External Notification System
    210 6822664 Browser Navigation for Devices With a Limited Input System
    211 7421666 Browser Navigation for Devices With a Limited Input System
    212 7454718 Browser Navigation for Devices With a Limited Input System
    213 6909910 Method and System for Managing Changes to a Contact Database
    214 6791536 Simulating Gestures of a Pointing Device Using a Stylus and Providing Feedback Thereto
    215 6897853 Highlevel Active Pen Matrix
    216 7411582 Soft Input Panel System and Method
    217 7024214 Synchronizing Over a Number of Synchronization Mechanisms Using Flexible Rules
    218 7493130 Synchronization Over a Number of Synchronization Mechanisms Using Flexible Rules
    219 6621746 Monitoring Entropic Conditions of a Flash Memory Device as an Indicator for Invoking Erasure Operations
    220 5434776 Method and System for Creating Multi-Lingual Computer Programs by Dynamically Loading Messages
    221 7050408 Communicating Multi-Part Messages Between Cellular Devices Using a Standardized Interface
    222 6957233 Method and Apparatus For Capturing And Rendering Annotations For Non-Modifiable Electronic Content
    223 6891551 Selection Handles in Editing Electronic Documents
    224 6256642 Method and System for File System Management Using a Flash-Erasable, Programmable, Read-Only Memory
    225 5778372 Remote Retrieval and Display Management of Electronic Document with Incorporated Images
    226 6240360 Computer System for Identifying Local Resources
    227 5905890 Event Architecture For System Management in an Operating System
    228 6212676 Event Architecture For System Management in an Operating System
    229 5813013 Representing Recurring Events
    230 6052735 Electronic Mail Object Synchronization Between a Desktop Computer and a Mobile Device
    231 6370566 Generating Meeting Requests and Group Scheduling from a Mobile Device
    232 6578054 Network System For Synchornizing Resource Stored in the Server Based on the Resource State Information Transmitted from the Client
    233 6694335 Method, Computer Readable Medium, and System for Monitoring the State of a Collection of Resources
    234 6920564 Methods, Systems, Computer Program Products, and Data Structures for Limiting the Dissemination of Electronic Mail
    235 6993715 Methods and Systems for Preparing Extensible Markup Language (XML) Documents and for Responding to XML Requests
    236 6996770 Methods and Systems for Preparing Extensible Markup Language (XML) Documents and for Responding to XML Requests
    237 7093136 Methods, Systems, Computer Program Products, and Data Structures for Limiting the Dissemination of Electronic Mail
    238 7111039 System and Method for Using Packed Compressed Buffers for Improved Client Server Communications
    239 7451180 System and Method for Using Packed Compressed Buffers for Improved Client Server Communications
    240 7493130 Synchronization Over a Number of Synchronization Mechanisms Using Flexible Rules
    241 7499942 Modeling Recurring Events In A Data Store
    242 7773106 System and Apparatus For Sending Complete Responses To Truncated Electronic Mail Messages On A Mobile Device
    243 7962585 Partial item change tracking and synchronization
    244 8010997 Enforcing Device Settings For Mobile Devices
    245 8015152 Web Based Client/Server Notification Engine
    246 8060064 System and Method for Optimizing Network Communication in Response to Network Conditions
    247 8065282 MODELING RECURRING EVENTS IN A DATA STORE
    248 8155624 Automatic Wireless Device Message Management Responsive To End User Preferences
    249 8224295 System and Method for Optimizing Network Communication in Response to Network Conditions
    250 8321416 MODELING RECURRING EVENTS IN A DATA STORE
    251 8386558 Cross-Pollination Synchronization Of Data
    252 8423621 System and Method for Improved Synchronization Between a Server and a Client
    253 US-2006-0200524-A1 Methods, Systems, and Computer-Readable Mediums for Configuring Electronic Messaging Applications
    254 US-2010-0082759-A1 Communications Grouped As Conversations
    255 US-2010-0093379-A1 UNIVERSAL MOBILE DEVICE MESSAGING
    256 US-2010-0145932-A1 Automatic Discovery of Alternate Mailboxes
    257 US-2010-0281127-A1 System and Apparatus For Sending Complete Responses To Truncated Electronic Mail Messages On A Mobile Device
    258 US-2010-0281136-A1 Methods and Systems for Preparing Extensible Markup Language (XML) Documents and for Responding to XML Requests
    259 US-2011-0218963-A1 Partial Item Change Tracking and Synchronization
    260 US-2012-0172007-A1 AUTOMATIC WIRELESS DEVICE MESSAGE MANAGEMENT RESPONSIVE TO END USER PREFERENCES
    261 US-2012-0198053-A1 Web Based Client/Server Notification Engine
    262 US-2012-0209928-A1 System and Method for Improved Synchronization Between a Server and a Client
    263 US-2012-0258687-A1 ENFORCING DEVICE SETTINGS FOR MOBILE DEVICES
    264 US-2012-0284351-A1 System and Method for Optimizing Network Communication in Response to Network Conditions
    265 US-2013-0086226-A1 MODELING RECURRING EVENTS IN A DATA STORE
    266 13/292346 TECHNIQUES TO APPLY AND SHARE REMOTE POLICIES ON MOBILE DEVICES
    267 13/752717 Cross-Polination Synchronization Of Data
    268 13/861721 System and Method for Improved Synchronization Between a Server and a Client
    269 13/946732 System and Method for Optimizing Network Communication in Response to Network Conditions
    270 14/074257 UNIVERSAL MOBILE DEVICE MESSAGING
    271 14/139301 Automatic Wireless Device Message Management Responsive To End User Preferences
    272 7873596 Extending Cluster Allocations in an Extensible File System (exFAT)
    273 8321439 QUICK FILENAME LOOKUP USING NAME HASH
    274 8364732 Extending Cluster Allocations In An Extensible File System
    275 8433677 EXTENDING CLUSTER ALLOCATIONS IN AN EXTENSIBLE FILE SYSTEM
    276 8452729 Extending Cluster Allocations In An Extensible File System
    277 8583708 Extensible File System
    278 8606830 CONTIGUOUS FILE ALLOCATION IN AN EXTENSIBLE FILE SYSTEM
    279 11/229485 Extensible File System
    280 12/052594 Extensible File System
    281 12/052603 Naming Protocol for Extensible File Systems
    282 12/493172 EXTENSIBLE FILE SYSTEM
    283 13/685018 QUICK FILENAME LOOKUP USING NAME HASH
    284 13/875386 Extending Cluster Allocations In An Extensible File System
    285 13/901997 Extending Cluster Allocations In An Extensible File System
    286 14/075525 Extensible File System
    287 14/099307 CONTIGUOUS FILE ALLOCATION IN AN EXTENSIBLE FILE SYSTEM
    288 6189146 System and Method for Software Licensing
    289 6657625 System and Method of Caching Glyphs for Display by a Remote Terminal
    290 7080404 Automatic Re-Authentication
    291 8243340 Pre-Processing Of Image Data For Enhanced Compression
    292 8244051 Efficient Encoding of Alternative Graphic Sets
    293 8351716 Efficient Encoding of Alternative Graphic Sets
    294 8433747 Graphics Remoting Architecture
    295 8504694 Remote Content Classification and transmission Using Multiple Transport Channels
    296 8527563 Remoting redirection layer for graphics device interface
    297 US-2008-0189355-A1 Per-Application Remote Volume Control
    298 US-2011-0035758-A1 Plug and Play Device Redirection for Remote systems
    299 US-2011-0142334-A1 Accelerating Bitmap Remoting by Identifying And Extracting 2D Patterns From Source Bitmaps
    300 US-2011-0185068-A1 Multi-Link Remote Protocol
    301 US-2011-0197151-A1 Graphics Remoting Using Augmentation Data
    302 US-2012-0266214-A1 CREATING SECURE INTERACTIVE CONNECTIONS WITH REMOTE RESOURCES
    303 US-2012-0275697-A1 Pre-Processing Of Image Data For Enhanced Compression
    304 US-2013-0031482-A1 Multi-Touch Remoting
    305 US-2013-0054835-A1 Data Compressor Using Hints
    306 US-2013-0060886-A1 Cross-Frame Progressive Spoiling Support for Reduced Network Bandwidth Usage
    307 US-2013-0268685-A1 LOSS TOLERANT PROTOCOL FOR REMOTING DESKTOP GRAPHICS
    308 13/729679 PROGRESSIVE ENTROPY ENCODING
    309 13/754003 REDUCE EXTRAPOLATE
    310 13/923134 Asynchronous transport setup and selection for interactive applications

    Microsoft's 310 Patent Claims on Android
    Text Dump of an original Chinese Government Document Freely available here:
    http://images.mofcom.gov.cn/pe... [mofcom.gov.cn]
    Format of this list:
    List Example Number Patent Number Patent Application Title

The only way to learn a new programming language is by writing programs in it. - Brian Kernighan

Working...