What are they thinking? They can do better than this. Much, much better.
MS has some very talented programmers. They're not very common, but they exist. The problem is that the entire company is completely and totally focused on developing an absurd number of new features and products, giving them completely unrealistic deadlines, and then shipping software on those deadlines no matter how half-assed or buggy it is.
The idea is that everything is serviceable over the internet now, so they can just "fix it later", except they never do. This perpetuates a duct-tape culture that refuses to actually fix problems and instead rewards teams that find ways to work around them. The talented programmers are stuck working on code that, at best, has to deal with multiple badly designed frameworks from other teams, or at worst work on code that is simply scrapped. New features are prioritized over all but the most system-critical bugs, and teams are never given any time to actually focus on improving their code. The only improvements that can happen must be snuck in while implementing new features.
As far as M$ is concerned, all code is shit, and the only thing that matters is if it works well enough to be shown at a demo and shipped. Needless to say, I don't work there anymore.
I personally think near-daily updating to fix bugs that should've been discovered and fixed before actually shipping product is absurd. It's been argued that this is because systems are more complex now, but maybe we don't actually need all that complexity...
Deadlines appear to have been a problem back then, as well.
I have wondered, how much of that has changed since. From your description, not much... :(
Progress/bugs were reviewed weekly at ship room. Live site issues were reviewed the next morning (involving the relevant on-call engineers).
So as with any large company which isn't a monoculture, things vary from team to team.
Also, calling them "M$" in 2016?
I suspect the culture still exist today.
Thing was, I'd never installed Skype on the system or even signed into it for several years, and here it was out of the blue asking me to accept friend invites from a bunch of spammers. It's now part of the "desktop experience" built in I guess (it may have to do with using a Microsoft account vs. purely local account, in my discussions with others).
The feeling is I don't really have control over the OS anymore, so I think it's time to move on soon to alternatives.
This is a really good way to describe modern non-free OSes (Windows, OSX, Android, iOS, the gamut). They're all asking me to sign into their services and always be connected and let them monitor everything I do and make suggestions and store everything I own on their servers. And when you try to turn all that off, everything falls apart. This is OK on my phone, which is really just an Internet portal, but on my desktop I expect my stuff to be my stuff. I guess many consumers like this (?), but I sure don't.
These days, I use Arch Linux and laugh haughtily at the crap proprietary OS users have to put up with.
EDIT: about this:
> The feeling is I don't really have control over the OS anymore, so I think it's time to move on soon to alternatives.
I had the same feeling since Windows 8, then I moved to Linux-based distributions. Never regretted it. I still have to deal with Windows when someone at work screws something up with their computer, but that's about it.
Not sure what to make of this.
Microsoft is now selling Lumia phones with Windows 10 Mobile, but even Windows Central thinks it's not ready:
"I'm relatively savvy with this stuff. But I was ready to throw it out of a window before someone pointed out the non-obvious thing that I needed to do. This wasn't the only piece of out-of-box jank, either, to which I was told a new firmware update should 'fix' most of. It then took 48 hours for the firmware update to show up, download and install to the phone."
http://www.windowscentral.com/microsoft-lumia-550-review
It's a real shame. Windows Phone 7/8 was so great because it was like an Apple product done better than Apple: it didn't have "kitchen sink" features, but instead everything just worked and was holistically designed. In the original WP7 design, the borders between apps and the OS were faded to a degree that's unique. (This design was eventually lost as Windows Phone tried to catch up with app-oriented mobile rivals.)
In Windows 10 Mobile, everything has been rewritten as Universal Windows 10 apps that sort of look like the WP8 equivalents but work much worse (because they're really desktop apps squeezed onto a phone).
That kind of endless strategy-driven software rewrites are the plague of Microsoft today. The OP who is disillusioned with Windows Store mentions that the Store Dashboard got much worse when Windows 10 came around. Why? Who knows -- probably somebody at MS just decided that the Dashboard needs to be implemented using hot tech X rather than stale old tech Y.
This endless churn sucks and drives customers away. I quit using Windows Phone for good last year, mostly due to the customer-hostile Windows 10 plan and lack of new hardware. Can't say I've regretted it so far.
The even sadder thing is that when I tried using Windows 10 as my main OS for a while all the Windows 10 apps felt like phone apps stretched out to work on a desktop.
I guess part of the problem is that Windows 7 had reached the same plateau as Word had - it does everything most people need and there's no real reason to upgrade, and that MS wants to grab a part of the app/user data market so has tried to shoehorn all that into the mess left by the "windows will be the new IOS" debacle that was Windows 8.
This might mean they would not want to dedicate their efforts to working on Windows. Same would hold for things like iOS as well. To me, architecturally, they seem dead ends that have to be completely binned at some point, leaving little useful legacy. Would you like to really put your life work into something like that, if there are alternatives?
I think this must affect the culture, and the people they can hire.
I have no idea how "open" Windows is nowadays, I haven't really used it in 8 years.
1: not necessarily building software directly, it can be algorithms, books, philosophies, languages etc.
"Interested in" and "can get paid for" are two very different things. Microsoft have a big reliable revenue stream.
The weird thing is that there are clearly some people inside Microsoft that "get it". There's a big open push from the C#/Roslyn team. F# is pretty sophisticated. Microsoft Research are the Xerox Parc of our time: lots of great ideas few of which make it into production.
But the Win8/8.1/10 cycle has so clearly been driven by panic over tablets and phones that it's produced strange chimerical half-solutions.
It's rough.
I really like some of the new apps designed for touch, but where are the rest? There is no file browser for example?
OMG the default explorer window is a mess of icons.
This is how the start up world functions. Ship early, ship fast and fix things later. Microsoft is changing how they operate and are more in tuned with the rest of the world. Why the outrage when this same concerns applies to most the software we see here on HN?
Unfortunately, somewhere over the years I came to realize that the entire industry is really being hurt my Windows consumers dragging their feet about upgrading browsers and operating systems. Microsoft might be rushing too fast but you're probably still better off moving forward with them.
75% of iOS users are on Apple's latest major release. That's worth a lot. If 75% of Windows users were on 10, the Windows community would be much better off. I'd say ignore the perceived warts and get behind upgrading.
That's because wealthier people tend to keep up with the latest technology. And Apple has always made a conscious decision to target the wealthier customers.
Walk into any Best Buy and compare prices for Apple machines against the likes of Dell, Asus, Acer, and such.
Poor people buy cheap because of need and upgrade only when things stop working. Rich people are more likely to buy to optimize the and share the latest and greatest experience.
Other than that, Windows 10 has been rock solid for the past 8 months or so that I've been using it on my main workstation and my main tablet.
MS has more of less conceded that Win10 isn't business ready, so they have a special distribution called LTSB (Long Term Servicing Branch) of its Enterprise version. It doesn't auto-update, no feature updates, no cortana or edge, no support for app/modern apps, etc. Can you imagine windows 7 shipping with a lot of things stripped from it to make it more like XP? That would be crazy, but that's exactly what's going on here.
I think by 2017-2018 it'll be fine, but two or three years from release date to get something as stable as the previous versions seems really rough.
No they can't. It's just your selective memory from the time they were a big-ass monopolist that sucked the life from any competing platform to the point where you had to use theirs.
Now, when you are used to high quality design injected by Apple and then refined by competition in the mobile space, your standards have went up so high that you simply can't go back to the half baked buggy interfaces that Microsoft has always produced. The older systems don't /seem that way/ because you are familiar with them.
Hmm, people do like to glorify Apple. Just remember that Apple is the same company that told us we were holding the phone wrong and that included copy and paste after three iterations of the iPhone.
This is a problem if you are writing an app for a client who doesn't want to publish on the app store. The only option is the very expensive and opaque volume-licensing program which is useless if your app won't have many activations anyway.
Ultimately Windows 8/10 is a closed platform similar to iOS. Are we as developers willing to pay 30% of our revenues to Microsoft when the day comes that UWP will replace .net/win32?
Windows, and DOS before it, used to be very open. Anyone could just download a compiler and create a binary, then use it themselves or share with everyone else. In fact you could even use the built-in debugger (DEBUG) to write tiny assembly-language utilities, and computer magazines --- not even developer ones, but regular ones like PC Mag --- would publish source code listings. Advanced users were also programmers, but there was no real distinction.
Now it seems even getting started writing some sort of program for your own system requires going through a huge amount of bureaucracy and could involve payment. The customary way of installing software has been termed "sideloading" and recommended against. There is a rising wall between "users" and "developers", making it harder for the former to become the latter.
I suppose Linux is more open, but there is still the very noticeable centralisation of app-store-like repositories, the discouragement of installing software via other means, and the bureaucratic process of getting software into those repositories.
Ostensibly, the whole reason for this is security, but it's easy to see other motivations. The idea that almost all users are completely stupid idiots who can't decide for themselves, and effectively locking them up so they can't do anything, is horrible for the continued advancement of computer literacy.
Certainly before and outside of these closed platforms there is malware and other threats, but there is also something closed platforms don't have, and which I think is also very important --- freedom.
Relevant story: http://www.gnu.org/philosophy/right-to-read.en.html
Regarding Linux, the centralisation is at least justified (convinience, security). Furthermore Linux provides full freedom to ignore/bypass it. Not true with iOS/Android/ Windows 10 UWP.
Not quite. What is recommended against, if at all, is installing directly from source. You're encouraged to build packages instead and use those. (And mainstream distributions have wrappers that let you build packages from arbitrary sources, if the developer doesn't provide packages for your distribution.)
It's like recommending Windows users to use .msi packages over copying files directly to %PROGRAMFILES%, which isn't the worst advice.
So did all the open-source people. ;)
https://technet.microsoft.com/en-us/library/hh852635.aspx
Or is that the volume licensing program option you mention? I'm not sure (never tried it).
Edit: sideloading seems much simpler in Windows 10: https://msdn.microsoft.com/en-us/library/hh454036.aspx#Insta...
Windows 10 does seem much simpler. Will have to try it out to be sure it works though. If they have removed the volume-licensing nonsense that would be a godsend.
update regarding windows 8 sideloading: Yep. After a cursory investigation, it seems that obtaining a sideloading key is the hard part- Its needs volume licensing involving purchasing a minimum of 100 keys for around 3000$ if i am not mistaken (https://stackoverflow.com/questions/12008252/sideloading-app...). I want to be sure so will look at it in more detail though.
I've been away from Windows for awhile so I just want to clarify this - when you say "apps", are you talking about all end-user applications? Or only some sort of desktop widget type system?
Basically everything I used on Win7 works / can be installed just the same on Win10. .msi packages, Chocolatey packages, oddball Win32 apps I've found over the years, even portable programs that haven't been updated since XP. Only had one program mysteriously uninstalled itself when I made the move: IronRuby. I'm not sure if Windows Store apps can be sideloaded, but the only ones I have installed came installed by default. Easy to avoid.
(I'm largely expanding on what Santosh83 said in a sibling post.)
That would explain the move to `offer' Windows 10. But I can't see .net/win32 being replaced before 10 years.
For example, UWP is the only serious contender for apps with a rich touch/gesture-based UI. Eventually microsoft will stop adding new features/APIs to other platforms in favour of UWP. For example they might decide not to port the latest DirectX version to .net/win32. That is usually how things play out.
Regarding windows 8, its seems you need to purchase sideloading keys in bulk in order to do so, unless you are installing on windows 10 enterprise. If you can provide a method otherwise, that would be big help.
Windows 10 seems to be different (no sideloading key required?), but i haven't tried it out or investigated in detail.
Maybe if I had a Windows tablet, apps might be reasonable, but alas, I only have the now-discontinued and never-really-supported Surface RT.
After moving abroad I was unable to access my Microsoft account(locked), for more than a month, just because I couldn't provide them with the last IP address I had used to access my account, along with last 5 received email subjects, 5 contacts in my contact list among many other unreasonable questions the common user doesn't even know how to answer. All this because I didn't own my recovery email address any longer.
Funny thing about it is that their support is so badly designed (to cut costs I suppose) that over the phone line there's not an option to talk with an operator regarding a Microsoft account. All you get is a "check microsoft online support for help on your account being locked"... which, guess what... requires authentication[1]!
[1]https://login.live.com/login.srf?wa=wsignin1.0&rpsnv=12&ct=1...
You can just request a reset mail to another address, wait 30 days, and it will arrive.
Actually, after getting my account unlocked, I was forced to change password and my new password became temporary for 30 days (couldn't change it again).
Hopefully they avoided the couple of years where Google forgot to have that form submit to a working email address:
https://www.google.com/search?q=higgins-prod-lost-hard-landi...
While we're on the topic, now is a great time to print some backup codes and lock them in your safe. Sometimes it is easier to wait until you return home to recover from a lost / wiped smartphone.
However, all I am using it for is games that are not ported to linux yet, the rest is done on linux both at home and at work. That might influence my feelings.
Well an example are the improvements to the various authentication implementations, the fact that I can now finally configure my personal workstation to be impervious to certain types of pass-the-hash attacks. A nice matrix that illustrates the improvements can be found here:
https://pbs.twimg.com/media/BfZw8iiCQAApq0T.png
Where 'green' is secure, as you can see a 'domain protected user' in windows 10 protects against almost every type of attack. These I have personal experience with from the attackers perspective, and windows 2012 domains are quite impervious to attacks that used to own the entire domain in as little as 2 hours. Not to mention that in addition to the matrix shown here, traditional psexec has finally been restricted to a special group of users, so that local administrators can no longer remotely take possession of a system unless explicitly configured to be able to.
Most of those improvements are really only applicable to enterprise, and some of them came about by switching to a more secure default (instead of new technolly).
New in windows 10 is also control flow guard (CFG), which most applications that I run at home and work already support. With the new addition of CFG use after free exploits should be harder to achieve on windows 10 than windows 7, although I don't have any personal experience with developing exploits for windows 10 yet.
In addition to the general improvements to credential protection and CFG, windows 10 is further isolating critical system components from each other in the kernel. I haven't experimented/looked at it in any detail yet, but I get the impression it's conceptually similar to qubes OS. In windows 7 the kernel patch protector (KPP) ran in ring 0, just like al l the other kernel code, if you got code execution you could simply patch KPP too, and then your rootkit had free roam over the kernel. Now Microsoft claims that in windows 10 KPP has been isolated so that normal 'ring 0' (if that still means anything in the traditional sense) can no longer patch it.
[1] https://blogs.msdn.microsoft.com/b8/2011/09/15/protecting-yo...
To make your window resizable (!) and responsive, use the following XAML
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState x:Name="wideState">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="641" />
</VisualState.StateTriggers>
</VisualState>
<VisualState x:Name="narrowState">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="0" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="inputPanel.Orientation" Value="Vertical"/>
<Setter Target="inputButton.Margin" Value="0,4,0,0"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
i lolled.theres also this gem:
bmp Windows::WinForms::XAML::Imaging::Bitmap = ^new Windows::WinForms::XAML::Imaging::Bitmap(filestream)
Which can be avoided by putting `namespace Windows::WinForms::XAML::Imaging` in every CPP file.I feel like C++ is getting ridiculously cumbersome to code on par with Java, and I also feel like this "XAML" crap by Microsoft would drive away all but the more patient programmers.
for example from the same page: to print "Hello's" you actually have to type "Hello"s", (I assumed you cant use \' anymore)
You can also create your own triggers so that you can be "responsive" to any arbitrary event.
> bmp Windows::WinForms::XAML::Imaging::Bitmap = ^new Windows::WinForms::XAML::Imaging::Bitmap(filestream)
That must be an outdated example. That namespace doesn't even exist. You can add images like this:
<Image Source="hello.jpg"/>
Basically this XAML does 3 things:
- declare 2 states: narrowState for windows smaller than 640px widestate for windows wider >= 641px
- set the layout stacking strategy of a container to Vertical when in narrowState
- set a top margin of a button to 4px when in narrowState (not sure this is relevant for this sample)
Sure, it could be improved by having
1) the "auto" keyword and
b) one project include which exactly defines which namespaces/aliases to use.
>its now in 4 spots (header, function definition, and two spots on the same line in case the compiler cant find those?)
also they added a ^ operator so thats cool.
but I guess my gripe is every time I want a different taxonomy function I have to page up to the top of my CPP and type 42 keystrokes. (also I think I might have been missing an extra taxonomy there and its really 5 namespaces deep.)
Declarative UIs in XML are more verbose and less flexible than just putting the appropriate expressions in a simple resize-recalc table, which is what the Win32 equivalent would be.
It's sort of like the hacker vs. cracker distinction, it's all just considered 'hacking' now in common vernacular because of how the media portrayed it for the last decade as all just being called hacking. Maybe not the greatest example, but it comes to mind.
Allow me to exaggerate for a bit: "application" implies desktop: you would run the installer, it would be a powerful (and complex) tool, capable of interacting with other local tools.
OTOH, "app" implies the everything-is-mobile paradigm: you ask the WhateverStore to install it for you, and if you've been nice and the phase of the moon is right, your plea is granted. Complexity is discouraged, drool-proof colorful interface is encouraged, the only allowed interaction is with the Big Walled Garden In The Cloud.
So, yes: Win10 has apps, and it's trying its damnedest not to have applications.
Recently I contacted Microsoft technical support over a product that has some serious issues. Basically they tell me that they have no intention of paying for the repair even though the product is under warranty, in blatant violation of European law.
> Within six months from receipt of the goods, you just need to show the trader that they are faulty or not as advertised. But, after six months in most EU countries you also need to prove yourself that the defect already existed on receipt of the goods, for example, by showing that the defect is due to the poor quality of materials used.
I have successfully used the EU consumer protection laws to have Apple replace a faulty battery on a laptop that was around 20 months old.
My partner has a laptop with an Core i3 processor and above-average RAM, and is on the whole a beast compared to my Dell Chromebook 11. My partner upgraded to Windows 10 and I have since used it occasionally to check something here or whatever.
From a couple of admittedly brief sessions using it, I have noticed that Windows 10 seems extremely "laggy", for want of a better word, as though there is a 100ms delay between clicking something and that click registering. It's nimble enough at starting up, it's just interacting with the thing that seems to be slow.
Anybody else experience this, or am I just used to instant feedback from UI?
Sounds like side loading is a better choice on both OSes.
His "Website constructor" app is in 3rd position when I search for "Website". Not that bad for such a generic keyword.
Also, I guess one thing with these apps is that the price range (between $12 and $20) is a quite high compared to the majority of the other apps on the store and (unfortunately?) a lot of people are not ready to buy apps >$2.
I guess that the store search algorithm depends on the conversion rate (people buying the app VS people trying it) and that conversion rate is probably pretty low, so maybe lowering the app price could lead to more sales and higher ranking.
Give me something else, please. I now hate windows, can't afford osx, and don't want to deal with linux.
I've come back to full-time Windows development after over a decade of PHP and Rails, and you could lift my experience with trying Entity Framework and lay it on top of these complaints, and not notice a difference.
I've always said this about Microsoft products: they make it really easy to get to 70% of what you want, and then make it nearly impossible to finish. There's a massive bend in the effort/results curve. With open source, it's more difficult in the early stages, but it's a steady progression to 90%, and then you have the tools to work out how to get exactly what you want, if you want to make the effort.
I can't tell you how many times I saw an article about an app and tried to find it in the store, only to come up empty handed. This has happened so many times on my Windows Mobile 10 phone, I lost count. Just this week I was looking for a better Twitter client app. I would type in "twitter" "tweet" "twitter client" "twitter app" and all I would get would be the main Twitter app and nothing else. Then I had to start doing Google searches for "best twitter client for windows mobile 10" which then gave me articles from 2013 and 2014 and for WP 8.1 - not exactly an up to date list of current Twitter clients.
Compare that to the Google Play store. You simply enter "Twitter" and get a dozen other apps, none of which have Twitter in their name. Plume, Echofone, Fenix, Talon, Persiscope are just a few of the examples.
It was such a massive headache, I actually decided yesterday I'ms scrapping Windows Mobile 10 and going back to Android. I've been a huge supporter since WP 7, and held out hope things would improve, and they haven't. Their app store is a massive failure, you can't find anything in the store you want, developers have no reason to build for the platform, and I'm not going to start with the myriad of UI problems I see already in the latest build (build 10586.63) that still have not been solved. Just basic shit like battery life is still a major problem. Not to mention they took away some very basic features from 8.1 that everybody loved like the ability to show Bing weather on the lock screen.
I've finally reached my breaking point with their platform.
Windows is dangerous and 10 just made it more so. It's not easy, but break free of the proprietary os chains now before they lock your brain in with iBrain and update it without your permission.