
Microsoft Garage releases Mouse Without Borders - alexsb92
http://www.neowin.net/news/microsoft-garage-releases-mouse-without-borders
======
avolcano
Before you pass this off as a Synergy clone, check this out:

> As Microsoft's Steve Clayton explains, "I have two PC’s on my desk at work
> connected to 3 LCD screens and using Mouse Without Borders I can move my
> mouse between the 3 screens, even though one of them is attached to a
> different PC from the other two. _What’s more, I can move files between the
> 2 computers simply by dragging them from one desktop to another._ "

> In addition to the file movement features, Mouse Without Borders also allows
> the user to log onto all the PCs linked together by the program via just one
> PC.

So yes, more than just a limited Synergy.

~~~
mamp
So the question is do you need a whole separate unit within a company to
create this "innovation"? Sometimes in microsoft land "innovation" == "not
reading widely enough".

~~~
xpaulbettsx
The Garage is a community, not a paid group (sometimes this isn't clear to
folks outside of MS).

The point you should take from this news though, is that Microsoft is now
helping its developers release their projects they hack on in their spare time
as Microsoft, if they meet the quality bars as well as being popular / useful
enough inside Microsoft.

~~~
drivebyacct2
This is my precise issue with Microsoft today. People rush to use Entity
Framework, despite more featureful community projects that are better tested
and have a wide base of users. There is a poor or nonexistent community
surrounding many of the Microsoft technologies. The fact that community
projects targeting Microsoft properties have to be released with Microsoft's
control and branding is very disappointing.

~~~
xpaulbettsx
I have no idea what you're trying to tell me. How is EF related to developers
working on side projects?

~~~
drivebyacct2
Sorry, I took "The Garage is a community" to mean non-Microsoft employees.
More to that apology, a re-read of your comment leaves me wondering just what
I was thinking. Alas, I'll continue with my thoughts; feel free to ignore them
or consider them OT; I apologize.

My point might be summarized or expressed in a different way. I worked with
.NET for the last 12 months and I can remember (just off the top of my head) 4
distinct issues that were trivial to fix but where not documented or described
anywhere. They were weeks of work. On the other hand, I'm working with non-
Microsoft tools and languages now, and I've had more than three of these scale
of issues resolved in _literally_ less than a minute in an IRC channel, and if
not, in a tweet, or a forum post.

My joke is that if Google/Binging is not productive in a .NET
technology/tool/etc, my next best hope is posting on a forum with ridiculously
buggy forum-software, and waiting two weeks for a response. There have been
more than one post about this phenomena on HN as well. To be clear, I don't
necessarily think this is a "Microsoft problem", I'm just not sure why the
tactics and resources available for more open or community- _based_ projects
are so vastly different than the .NET/Azure/Windows scene (again, in _my_
experience).

~~~
shriphani
There's definitely a very active win32 channel on freenode - if not there's
channel 9 (which isn't unusable) and apphub. What were you using ?

 __* Alas, I'll continue with my thoughts; feel free to ignore them or
consider them OT; I apologize. __*

Why use an unrelated thread to give a braindump ? You seemed to have no
problems posting trollbait in response to this post.

~~~
xpaulbettsx
There's also the MSDN forums which are surprisingly good, despite their
absolutely awful forum software

~~~
drivebyacct2
Again, it's purely anecdotal, but I've had more than one topic go without any
reply, and one result in a Microsoft employee asking me to email logs. One of
which was over 600MB in size, just from loading VS and after sending the
email, I never heard back. I eventually gave up on that particular issue and
took the only remaining option which was reimaging my machine. (A Microsoft
produced and supported VS addon was causing errors in the .NET runtime that
were uncaught and untraceable. Reinstallation of VS, SP1, and all installed
version of the .NET runtime were futile).

(funny, the parent reply was posted, my post was downvoted and shriphani's
post were resurrected all within 30 seconds. Can't we just have a conversation
about this without it being personal or political? I know you both work or
have for Microsoft)

~~~
ryanmolden
>Again, it's purely anecdotal, but I've had more than one topic go without any
reply, and one result in a Microsoft employee asking me to email logs. One of
which was over 600MB in size, just from loading VS

Yes, sometimes to trace down a problem dump files are necessary, and with full
heap info they can be big. If you expect psychic debugging based on (often
times) vague descriptions of your problems or a problem that they can't repro
on their side, then you will be disappointed, then again with expectations
like that I imagine you will be disappointed a lot in life from pretty much
every software company you ever deal with.

>A Microsoft produced and supported VS addon was causing errors in the .NET
runtime that were uncaught and untraceable.

This sounds...unlikely. Not because Microsoft produced AddOns can't possibly
have bugs (of course they can), but saying something is 'uncaught and
untraceable' is like saying there is a evil demon in your machine, it just
doesn't stand to reason. Exceptions are exceptions are exceptions. Debuggers
can and do catch them rather handily, if they didn't / couldn't they would be
pretty much useless. I think a more accurate explanation would be 'I couldn't
figure out how to diagnose the problem myself'. Without sources that is
understandable as often times it is necessary to get to the root of the issue.

>Reinstallation of VS, SP1, and all installed version of the .NET runtime were
futile

So you never solved the issue and continue to see it to this day? Or you just
stopped using VS or this particular add-in all together?

~~~
drivebyacct2
Whatever. I've lost interest in participating in this thread.

I don't frankly care if you believe me. The crash occured and the .NET runtime
kindly informed me that it was unaware of where the crash was occuring. I'd
post it here, but I'd prefer it were not linked to my name as Googling the
error message reveals my only post.

I had to reinstall Windows to resolve the issue. Reinstalling Visual Studio
and the Azure SDK and SP1 and all the .NET runtimes did not resolve the issue.

Just so happy to see that I've been downvoted with no explanation to how my
comments violated HN principles and I'm being accused of being incompetent and
stupid. Fantastic. If I'm so incapable of reproducing issues and "demons in a
machine" is so laughable, why exactly does the "Unhandled
ExecutionEngineException" exist and why was it more than trivial for me to
reproduce?

So now _three_ MS people doubting me, mocking me, and suggesting #win32 as
remotely comparable to open source style IRC rooms. This is just sad, and
ironic as all get out considering the fact that my original comment was that
Microsoft and community don't play nice together. Don't you see that irony?

~~~
ryanmolden
>Whatever. I've lost interest in participating in this thread.

That's unfortunate.

>If I'm so incapable of reproducing issues and "demons in a machine" is so
laughable, why exactly does the "Unhandled ExecutionEngineException" exist and
why was it more than trivial for me to reproduce?

Well, an ExecutionEngineException is simply the CLR encountering some
unexpected problem. The CLR is a piece of software like any other, it is
simply a COM component, written in C++. Like any other program it too can have
bugs and situations that it fails to handle gracefully. They are not
untraceable or uncatchable in any way, I have caught and debugged a number of
them. Of course without the pdbs/source that is much harder for an external
person to do. In my experience it is actually preceded by an SEH exception
that the CLR itself will catch and translate into the rather generic
ExecutionEngineException, so watching for first chance SEH exceptions is
generally more fruitful.

>So now three MS people doubting me, mocking me, and suggesting #win32 as
remotely comparable to open source style IRC rooms.

So when I point out that 'untraceable uncatchable exceptions' don't exist you
see that as mocking you? Or was I the doubting one? I am simply a software
engineer, like I assume you are. I was pointing out some things don't exist.
If untraceable, uncatchable exceptions existed there would be a class of bugs
that were logically impossible to find/fix.

As for 'the .NET runtime informing you that it was unaware of where the crash
was occurring', the .NET runtime would never be aware of such a thing as a
crash is a crash. It means the exception found no handler and the process was
terminated. Figuring out why is what a debugger is for, not the runtime.

>I'd post it here, but I'd prefer it were not linked to my name as Googling
the error message reveals my only post.

It is strange that you want to hide your identity so much.

>This is just sad, and ironic as all get out considering the fact that my
original comment was that Microsoft and community don't play nice together.
Don't you see that irony?

Not really, 'the community' doesn't consist of a single person. I am active on
the MSDN forums in my area of expertise. I am also active on my team's blog.
In the course of such activities I regularly encounter trolls, I am not saying
you are one, just saying they exist. To 'play nice' with a troll is pointless.
Some people have axes to grind and no matter what you say or do they will be
upset, there is no point trying to help those people. Also, if people are rude
from the get-go I tend to not bother helping them, since I generally am
spending my own free time to try to help them out, and there are lots of other
things I could be doing. Civility is kind of the minbar for what I expect of
them.

As for 'open source' communities being more civil/friendly...well that is
certainly not my experience across the board, but then again, people always
have different experiences and tend to remember the worst/most frustrating of
them and project that as 'the norm'.

~~~
drivebyacct2
>That's unfortunate.

Sorry, that was rude and dismissive of me.

My comments were never about the communities being civil or friendly, they
were about them being in existence. There is no equivalent for many of the
support channels I enjoy in products that do not come from Microsoft. For the
third time, I will note that I don't find this a fault of Microsoft at all,
but just something that happened as .NET grew among developers around the
world. It was merely a point of discussion and _honestly_ I was more curious
about .NET developers that leap for Microsoft products and tools in the face
of strong alternatives, than I was interested in hearing Microsoft employees
defend their products (or coming across myself as attacking them. If I have
seemed that way, I apologize sincerely).

I don't know how "uncaught and untraceable" had an ambiguous meaning.
Obviously I don't work at Microsoft and can't just fire up a debugger attached
to the VS source to track down an issue. I find it bemusing that "you can't
reproduce the issue or track it down", turns into, "well, it would be hard to
debug without the source". (No joke.) From where I'm sitting, that tends
toward "blame the bug on the user" bait.

As for the last two paragraphs, I'll merely hope that it wasn't a veiled
attempt to call me a troll, considering that I merely expressed my experiences
and the support structures available to me and then was told that I was wrong
and didn't know what I was doing. I merely wish that the support forums were
better, and that there were _community lead_ resources for Microsoft products.
Maybe it's untenable of me, maybe I should just accept that I need to come to
Microsoft when I want help or guidance with Microsoft-fostered technologies.

Hehe, I'm certainly not going to say they're more friendly or civil, in fact,
likely the opposite. Anyone who has set foot in ##C++ or ##java knows that
there is no hand holding and a strong likelihood of verbal abuse. Yet, I still
get answers quickly and get a more lively discussion about issues that are
never even broached in the Microsoft "communities" (a forum does not count as
a community, and certainly not channel9's 4 generic categories).

I hope this clarifies. I'm simply genuinely curious as to the fundamental
nature of how the global community of .NET developers differs from that of
python/go/c++/ruby/etc.

As for my identity, I have strange and history-backed reasons for doing so.
I'm paranoid down to the last pixel detail of my Facebook privacy and that's
probably the only thing personally identifiable on the Internet for me
(outside of work related posts on MSDN forums). I'm just weird like that.

~~~
ryanmolden
My apologies as well, in re-reading my post some of it was douchey, sorry
about that :) As for your specific points

>I don't know how "uncaught and untraceable" had an ambiguous meaning.
Obviously I don't work at Microsoft and can't just fire up a debugger attached
to the VS source to track down an issue. I find it bemusing that "you can't
reproduce the issue or track it down", turns into, "well, it would be hard to
debug without the source". (No joke.) From where I'm sitting, that tends
toward "blame the bug on the user" bait.

No, what I meant is that you CAN catch the exception and probably get a stack
trace, Microsoft, for reasons that are beyond me, generally has stripped
symbols on their public PDB servers, so when customers send me stacks even
with symbols resolved they say meaningless things like msenv.dll!SomeFunction
+ 0x392818 bytes, which is obviously silly. And THAT is the reason it is hard
for external people to actually figure out the underlying issue or a good
work-around. If the exception is coming from within VS code then you don't
have much info on the stack. A lot of times it is coming from a third party
dll (I group MS out of band releases here as they use the same extensibility
APIs that third parties do for the most part), and having those symbols is
also unlikely as lots of companies don't even have symbol servers, so
resolving those stack frames can be a no-go as well. Some of this is unique to
Microsoft, though I would have the same problem debugging Google or Apple code
if I didn't have proper PDBs or source access, so I don't know if this is
solely the fault of Microsoft, though their public symbols being stripped is
stupid (don't get me started on how I can't even GET internal access to Office
PDBs without a 'business need'...)

>As for the last two paragraphs, I'll merely hope that it wasn't a veiled
attempt to call me a troll,

Nope, that is why I explicitly said 'not saying you are one', I was explaining
my views on why the community can at times be dismissive or appear rude. They
generally run into lots of people that come, demand answers, are generally
rude all around and then leave without ever saying thanks...it is a thankless
job to man support forums, and it can burn people out :)

I have had some (albeit more limited) experience with a couple of open source
communities and never felt a much different vibe, I just assumed it was 'part
of the customer service' kind of arena, you generally deal with the pissed off
and perhaps pissy customers, which can be hard, and often times unless they
have a simple question you can answer immediately they lose interest in the
whole undertaking, accuse you of lying if you say you can't repro it, etc...

>I merely wish that the support forums were better, and that there were
community lead resources for Microsoft products.

Me too, that is why I try to help out at the forums for the product I work on.
Unfortunately I don't agree with all of Microsoft's support approaches, but no
company is perfect, at least not one I have found. I think the lack of a two-
way community has to do with Microsoft being a for-profit entity. People feel
that if they have problems Microsoft better damn well fix it now, and they
don't have interest in helping others out, that's Microsoft's job. There is
some decent community on StackOverflow around MS technology, much better than
MSDN Forums, but even that can be hit or miss and generally the best answers
end up coming from Microsoft employees, most of whom are helping out in their
free time as most of them are definitely NOT paid support people, so they
can't really spend their work day answering questions, at least not too much
of it if they want to make all their commitments happen.

>I hope this clarifies. I'm simply genuinely curious as to the fundamental
nature of how the global community of .NET developers differs from that of
python/go/c++/ruby/etc.

Yep, as I alluded to above my own personal feelings have to do with
Microsoft's history (most of the people involved in the most egregious things
are gone or at least 'reformed' enough I doubt they would be so 'bold' as they
were back then), the fact it is a for profit company and the fact that it
seems harder (for whatever reason) to get people in the community with a lot
of knowledge (there are a lot of folks not at Microsoft that probably know
part of my product better than I do) to 'give back'.

It is a hard problem, there are people that do nothing but work on community
engagement, they closely monitor/gather data on this and try to do outreach,
tweak things to be better, etc... but I don't think anyone has found the
silver bullet yet.

------
hamidpalo
This is an internal tool that has been apparently been made public. All
employees at MSFT get more than one machine connected to many screens. Mouse
Without Borders was developed by a group of employees in their free time to
make it easier to deal with multiple Windows desktops. IMHO it is much nicer
and more secure than Synergy for managing Windows machines. It's not a clone
of anything. The Garage is MSFTs version of 20% time where you can work on
whatever projects you want. There are some _extremely_ interesting and useful
projects that are part of the Garage beyond this one that haven't been made
public yet.

Disclosure: I'm a dev at MSFT.

~~~
PyErr_SetString
"All employees at MSFT get more than one machine connected to many screens"

Just out of curiosity, why does everyone need more than one machine?

~~~
techsupporter
They don't. Perhaps all devs get more than one machine, but not every employee
("blue badge") gets a 2nd or more system. My sole company-issued computer is a
ThinkPad.

Note: I'm in Ops at MSFT.

~~~
PyErr_SetString
Yeah, I thought that sounded strange. It would even be slightly embarrassing
if all people needed more than one machine to get their job done.

~~~
lurker19
Microsoft develops operating systems.

~~~
PyErr_SetString
I am aware of that :) When developing OS it might make sense to have two
machines. (unless you can run in a VM, which I think many could)

But, not everyone at MS works with windows, which is why I was a little
surprised about the statement that everyone had more than one machine.

~~~
awa
Afaik 2 machines are almost mandatory 1\. Dev machine 2\. Email machine

The 2 biggest orgs inside MS are Office and Windows, devs in both of them
can't have a single machine doing both the above tasks. (And VMs suck for disk
based I/O, and that becomes a factor when you have multi-hour build time)

------
Urgo
Will give this a shot since maybe since its by microsoft it will integrate a
bit better but yeah its nothing new. Many of you already brought up synergy as
doing this same function which is true, I used to use that, but for the past 3
or so years I've been using Input Director (<http://www.inputdirector.com/>)
which also does the file transfer thing. I don't really see this being any
different then Input Director..

~~~
meatmanek
To save some folks a click: Input Director seems to be Windows-only.

------
spiralganglion
An observation.

There's a bizarre inconsistency in the videos coming out of Microsoft. The
video for this (pretty bleeding cool) evening-and-weekend side-project
couldn't sell anything, but that's not the point. The Mango video[1] looks and
sounds pretty good, like it was made by professionals. But their Windows 8
videos[2][3] are unbelievably slipshod. This is so counterintuitive.

Obviously, the Mango video is intended to give some dearly-needed promotion to
a fledgling product in a fiercely competitive market. But Windows is their
flagship product! The [3] Win8 video was watched by 10x as many people as the
[1] Mango video, so obviously these early Win8 previews are getting a lot of
buzz. But the more recent [2] Win8 video shows only subtle, insignificant
improvements over the earlier [3] video (the sound is better-recorded).

I would love to know why such little care is given to the public unveiling of
a product that's tremendously important to their customers, and their bottom
line, while absolute TLC is showered on something that doesn't even have a
foothold in the market. They obviously have the tools and talent to do better,
so someone decided not to exert the effort. This fascinates me.

[1] Mango: <http://www.youtube.com/watch?v=OP30F3ZxTmw>

[2] Win8 boot time: <http://www.youtube.com/watch?v=9ia3zBs42cc>

[3] Win8 metro preview: <http://www.youtube.com/watch?v=p92QfWOw88I>

~~~
rkwz
Different audience.

~~~
rbanffy
Which is really interesting. Who are they trying to sell each product to?

------
cleverjake
I have been doing this for years...<http://synergy-foss.org/>

~~~
rplnt
Same here. And I probably stay with synergy as it is multiplatform that
microsoft thing has some extra functionality. See this comment:
<http://news.ycombinator.com/item?id=2983052>

------
cincinnatus
The most annoying thing about this is not the existing similar products. It is
that Microsoft was demonstrating this capability in their business showcase on
the MS campus almost 10 years ago! Drag from desktop to laptop, shared mouse
and drag and drop to copy. Lots of great ideas never seem to get past
prototype.

------
radarsat1
It has to be said though, a major advantage of Synergy is that you can use it
to switch between Windows, Linux, and OS X. For some, this is the main reason
for having multiple machines.

------
sakura_k
Perhaps if the article were more accurate - "Microsoft developer releases side
project into the wild" - this would be better received?

The Garage is a loose collective of people building things in their spare
time. It's not a formal organization and people who work on Garage projects
come from all over the world. Those who are drawn to ambitious side projects
would probably fit in pretty well here. Kudos to this project for maturing as
far as it has!

~~~
mellifluousmind
I agree. For those that never worked for MSFT will have a hard time to know
that Garage is an internal MSFT lingo for MSFT version of 20% free time. But
yes, essentially, it is a MSFT Dev who wrote the code as side project and
released to the wild.

It is a great for PR, but they really need to make a better video. I couldn't
understand what he was saying, because the volume was so low.

------
ck2
Input Director - used it with my netbook for years now.

It also does shared copy/paste which is really handy.

<http://www.inputdirector.com/>

And it can encrypt the communications, I wonder if MS bothers?

~~~
evanlong
When I was at MSFT there was an internal tool call Magic Mouse that did what
Mouse without Borders does. Magic Mouse had encryption so I would venture a
guess that Mouse without Borders does as well.

~~~
tallanvor
Mouse Without Borders is Magic Mouse - they just renamed it a few months ago
is all.

------
artursapek
I like that this blurs the line between individual computers. To what extent
does this combine their processing power though? Right now it just sounds like
an easier way to transfer files. I wonder how much further this will be taken.
Perhaps one day it will be easy to temporarily bunch together a few computers
into one super-performing machine.

------
wvenable
A noticed a lot of people mentioning Synergy, but if you're running nothing
but Windows PC's then I highly recommend Input Director (
<http://www.inputdirector.com/> ). It's much easier to configure than Synergy
and is a lot smoother.

------
xtracto
>"Microsoft Garage projects are projects that Microsoft employees perform in
their nights and weekends"

This does not sound right... does Microsoft own what their workers do on their
_nights_ and _Weekends_? I understand Google owning what its employees do on
the 20% free time, but on weekends?

~~~
simonbrown
See: [http://stackoverflow.com/questions/9705/what-can-i-do-
about-...](http://stackoverflow.com/questions/9705/what-can-i-do-about-my-
employers-intellectual-property-policy)

------
trollLikeABoss
Two things - MS needs to learn how to make fun tech videos, and its just so
uncool not sharing the code in the age of social coding. The music in the
background is extremely loud, enough to drown the engineer's voice at times -
and no demo? Just compare it with videos that come out of google (labs) ...
The CEO(one and only) said it best long time back "The problem with Microsoft
is that they have absolutely no taste ..."

------
drivebyacct2
Revolutionary! Despite competing open source projects that have been around
for years with more features and no arbitrary limitations of four computers.

~~~
drivebyacct2
I've been accused of writing a troll-bait post, so I thought I'd elaborate on
my thoughts. There seems to be this cheering of the notion of "Microsoft
Garage" despite the fact that Microsoft still gets to say if it's released at
all, and how.

I'm more sad to see that this was it's own project instead of a
modification/fork/extension of Synergy. If the focus and energy used to
develop this were instead spent on cleaning up the Synergy UI and adding drag-
and-drop... it would have been a net-less amount of energy spent and a better,
more widely usable product.

~~~
drivebyacct2
Thanks for the downvote and no reply! It's totally awesome that Microsoft is
taking control of their developer's community projects and totally awesome
that they incorporate these projects and relegate them to internal use only
instead of encouraging the betterment of existing tools.

How dare I suggest otherwise. I totally deserve to be downvoted. THANKS.

