
The Windows Driver Frameworks are on GitHub - canacrypto
http://blogs.msdn.com/b/windows_hardware_and_driver_developer_blog/archive/2015/03/18/windows-driver-frameworks-source-on-github.aspx
======
kriro
There are actually some strong OS voices in Microsoft. I was at Solutions
Linux in France (around 2006 iirc) and there was a Microsoft booth. Since our
booth had some downtime I talked to the guy manning their booth who was kind
of stranded between Linux distros and FLOSS companies.

He was pretty cool and genuinely trying to advance OS within Microsoft but
said it's a pretty frustrating experience overall (his descriptions of the
internal processes at Microsoft were pretty interesting). Seems like they have
come a long way since, I hope he's still working there. I should have his card
somewhere at home :)

So as far as I know there have been developers who were pushing to open source
a lot of infrastructure/language stuff for quite some time.

Edit: I think it's no coincidence we see this happening now that Ballmer is
gone. He was kind of the villain in the "let's open source stuff" stories I
heard.

~~~
brudgers
Scott Hanselman has been talking about the process of changing Microsoft's
culture toward open source on Hanselminutes since he started working there
about five years (and a couple of hundred episodes) ago.

The move to open source has been in the works a long time and appears (to me
at least) as part of Ballmer and Gates long term strategic plan for the era
when they were no longer the largest and second largest shareholders and the
company was more beholden to Wall Street.

The new post-founder (ok Ballmer wasn't technically a founder) era at
Microsoft has been set up so that Microsoft can operate like a software
company again. That means embracing current industry culture. Practices that
made sense when software came in boxes and was sold through magazines and
connecting meant squawking over POTS, needed to be looked at with an eye
toward long term.

Nadella was set up by Ballmer to fall into the pit of success. The super
tanker's rudder was changed years ago. The move toward open source is no more
overnight than the hardware build quality of the surface.

~~~
igorgue
Also, I bet having Phil Haack working at Github changed the mindset of a lot
of people, either way, even from the days from Novel and Mono, Microsoft was
always cool with opensource.

------
aceperry
I must say, I'm very impressed with all of the open source moves that MS has
done lately. I wonder if that will drive more adoption of C# and cause Oracle
to open up Java. I'm not a fan of C# because it's basically only used on
windows systems, despite xamarin and et al.

~~~
pjmlp
I like both eco-systems a lot, however Java is currently more open than .NET,
specially if you look around for available certified JVMs.

~~~
NicoJuicy
In this particular case, i'd prefer Windows above Oracle (Java) anytime,
considering they deliver malware with their Java Setup...

Edit: Some people give a link to an alterantive download without malware...
You know 99% of all Java downloads don't know that, do you?

~~~
pjmlp
There isn't any malware when downloading from

[http://www.oracle.com/technetwork/java/javase/downloads/inde...](http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Or when packaging the Java application with the runtime

[http://docs.oracle.com/javase/8/docs/technotes/tools/windows...](http://docs.oracle.com/javase/8/docs/technotes/tools/windows/javapackager.html)

Or using one of the commercial JVMs that compile Java to native code

Or just bothering to read the dialog when installing it from Java.com.

While it is true the bundling shouldn't exist in the first place, any
knowledgeable Java developer knows how to get applications deployed without it
being an issue.

Actually my biggest problem with Java is Google dragging its feets and making
the Android fragmentation a return of the J2ME headaches. Sun and Oracle were
right all along.

~~~
brudgers
My son gets the Ask crapware whenever he updates Java to play MineCraft on his
computer. He's a child, not a Java Developer. He just wants to play MineCraft
and Java is in his way and the Crapware loads by opt out.

~~~
pjmlp
You might see it differently, but I never let kids update software on their
own.

~~~
NicoJuicy
If you are always holding their hands, they are going to be unknowing when
they grow up.

Let them see for themselves why they shouldn't install the Java runtime and
explain to them why it's bad.

------
NamTaf
What effect will this have on the ability to boost driver support in Linux, if
any? FreeBSD has ndisgen [1], but would this help improve that or a broader
set of driver use in Linux?

Secondly, what about WINE?

[1]:
[https://www.freebsd.org/cgi/man.cgi?query=ndisgen](https://www.freebsd.org/cgi/man.cgi?query=ndisgen)

~~~
ikonst
It means nothing. WDF is a high-level framework for drivers on top of Windows
NT – basically a convenience library you link with. While using WDF, you can
freely call regular NT functions too.

It's like MFC to Win32.

~~~
NamTaf
Thanks for the information. I'm not at all involved in driver work so I have
no clue. :)

------
maguirre
This is slightly off topic. However maybe someone on this thread can point me
in the right direction. Can anyone recommend some good resources to get
started writing low-level drivers for windows (books or open source examples)?
I work mostly with embedded software on custom project. From time to time I
need to interface with Windows machines and the information of this topic has
always been limited.

~~~
galaktor
I too have been finding it hard to find a single reliable and up-to-date
source for learning windows drivers. There's a plethora of info online, but
lots is out of date and/or scattered and redundant. Even decent paid training
is hard to find, at least in my part of the world.

There's a book, but it's old [1]

There's samples, which are fresh [2]

There's a multi part series on Code Project, but it's old (yet much of it
still applies conceptually; samples not so much) Part 1 of 6: [3]

If anybody has a good one-stop-shop and updated source of learning I'd very
much appreciate it (I'd love a nicely written book on the matter that's not
older than, say, 3 years old)

[1]: [http://www.amazon.com/Developing-Drivers-Foundation-
Develope...](http://www.amazon.com/Developing-Drivers-Foundation-Developer-
Reference/dp/0735623740) [2]: [https://github.com/Microsoft/Windows-driver-
samples](https://github.com/Microsoft/Windows-driver-samples) [3]:
[http://www.codeproject.com/Articles/9504/Driver-
Development-...](http://www.codeproject.com/Articles/9504/Driver-Development-
Part-Introduction-to-Drivers)

------
ximeng
One barrier to developing drivers for Windows is the driver signing policy
[https://msdn.microsoft.com/en-
us/library/windows/hardware/ff...](https://msdn.microsoft.com/en-
us/library/windows/hardware/ff548231\(v=vs.85\).aspx) which requires you to
pay for a software publisher certificate.

~~~
frozenport
I can live with this. Buggy software drivers wreak havoc and security
vulnerabilities. I routinely use expensive industrial equipment without signed
drivers, and the problem seems to be a warning from the installer.

~~~
stinos
This seems to be the case indeed. The couple of times Windows BSOD'd on me was
always because of faulty drivers and more often than not the unsigned ones.

~~~
dfox
IIRC the only BSOD I got on XP on my thinkpad since 2006 was caused by not
even driver bug, but by driver that seems to have intentionally caused BSOD.

------
MrZipf
The open-sourcing is a sign that MSFT is in a tricky spot (BYOD, mobile,
tablet, games) and desperately needs to improve relations with the outside
world. Expect we'll also see MSFT using more open source in products to
compete effectively though I wonder what'd happen with internal best practices
that the outside world doesn't have, e.g. SAL. Will they contribute back?
Let's see.

Inside MSFT there used to be minimal credit for releasing source which was a
strong inhibitor in the employee review process. And a gratuitously awkward
internal process for open sourcing code with no path for accepting
changes/contributions. Attitudes are definitely improving.

The major benefit of this particular move will be when you're working on
Windows drivers - now you can see and completely grok what a piece of code
does until it transitions into the kernel proper.

~~~
threeseed
It's also a sign that Microsoft sees its future in services.

Which in that case means that protecting the former "company jewels" of
Windows and Office ceases to be less important.

~~~
cookiecaper
I don't think it's about Windows and Office becoming less important as
concepts or products, but that their old sales channel and use cases are
outmoded. Windows and Office will still be Microsoft's cash cows; they'll just
collect the fees through Azure, OneDrive, and other software-as-a-service
packages. Open-sourcing is about keeping Microsoft's platforms competitive so
that people will rent Azure nodes.

Microsoft realized they were becoming to FOSS as OS X is to Windows and is
trying to counteract that. Microsoft's vision is still valid; they want
Microsoft technology running every computer in the world.

~~~
wslh
Indeed it's clear that Office is very important, they are just unifying
products and services. Now you have a unified subscription of $ 9.99 per month
for Office 365 + Office Desktop Apps.

------
baxter001
"we understand there’s no substitute for having OS source available" Ho ho ho.

------
shmerl
Will it help making drivers for filesystems which MS doesn't care to support?

~~~
Sanddancer
Probably not. The filesystem API Microsoft uses, Installable File System, has
been in place and used by a bunch of people since the OS/2 days. Support for
filesystems like zfs is lacking more due to apathy than anything else.

~~~
andreiw
The IFS kit was a separate purchase from the DDK, even. There's a pieced-
together header floating around on the web (as well as some OSS drivers for
things like ext2)...

------
monocasa
I don't see a patent grant...

------
elchief
Whiny ass comments so far. Bravo Microsoft!

------
throwawaymsft
"First they ignore you, then they laugh at you, then they fight you, then you
win." -Gandhi

~~~
crazychrome
why this quote got down voted? it's exactly how Opensource progresses.

~~~
0xFFC
1.Because MSFT doing good job 2\. Gandhi was sick person, you can search about
it , He was afraid of money/tea and so many things.Those good thing we hear
about Gandhi I think most of them are propaganda.

~~~
throwawaymsft
1\. Sure, Microsoft is doing the right thing after exhausting every other
possibility. Closed source didn't work, FUD against open source didn't work
([http://en.wikipedia.org/wiki/Fear,_uncertainty_and_doubt#Mic...](http://en.wikipedia.org/wiki/Fear,_uncertainty_and_doubt#Microsoft)),
now they need to stop people from leaving their platform and tools in any way
possible.

2\. Ad hominem. The behavior of an individual doesn't change the truth of what
they say.

~~~
crazychrome
the behaviour of an individual does affect his creditability though.

------
vortico
I hope Microsoft knows this, but Open Source doesn't imply putting your source
on GitHub (and vise-versa). If Microsoft dev teams served source tarballs
along with their releases, we'd be just as happy. But perhaps they will
actually use the GitHub issue trackers and other neat features, as they are
pretty useful.

~~~
MichaelGG
Uh, publishing your source under a usable license is sorta really the
definition of open source. Whether or not you like their dev style or other
things is separate and trying to make new definitions. You shouldn't just
throw caps on a common description then claim no one is that common thing
because you've redefined it.

