Doesn't mean they can't file the issue. Then the team just checks the box on their ticket solution that says "WONT FIX" or "NOT SUPPORTED" and moves on with their lives.
Customers would feel respected, the workaround would be found and used, and no one would feel ignored. It would leave a customer happier than telling them they don't warrant interest.
Personally I'd be happier being told honestly I don't warrant interest, unsupported platform, I need to look elsewhere, than being strung along with false impressions.
It can always be passed on. The 'tech team' may say 'wontfix' because it's unsupported, but it's very clearly a bug that could bite them on 'supported' systems in the future as user-agent sniffing is notoriously unreliable.
Much like how Netflix monitors torrents to find out how popular movies/shows are, Microsoft could tabulate these reports to find what OS their customers want to use with OneDrive. But if they don't get recorded, there's no info to learn that from.
Much like how Netflix monitors torrents to find out how popular movies/shows are,
Wait what? Really?? What are they monitoring, seed ratios from trackers? That's an interesting/novel way of researching demand-makes sense given the service Netflix provides.
"SEE ALSO: Netflix’s ‘House of Cards’ Falls Prey to Piracy"
Still, that's a very interesting and out of the box method of thinking by the Netflix team. Definitely want to try and find out more about this; thanks for bringing this up!
Performance always matters. People often tend to shut that argument down quoting "Premature optimization is the root of all evil".
My opinion is that this quote was never meant to say "Performance/Optimization as a whole is the root of all evil".
If you don't have to care about it, it's because someone else did it for you. And if everyone cared a little, the web would be better place for the users(40MB for a single website maybe ?). (Not talking about other areas than web development here...)
Just think about it twice before dismissing that argument.
It doesn't always matter if your application only has a handful of users (plenty of internal applications) and defaults works at a reasonable speed. Also there are plenty of scripts that need to be run once and once only to get data from one place to another. Optimizing for performance then is pretty pointless.
Nope. I happen to be a product manager for one of such internal applications with around 60 users. This can be considered as a handful of users when compared to the internet scale. Getting the product adopted even for such a small group was a big pain. The primary complaint - it is slow! After two rounds of performance optimizations, the adoption velocity for new features has increased 10x.
Honest question: How does Emacs help with this particular problem ?
I feel like with every editor, it involves repeatedly hitting J, Ctrl+N or down arrow, which is inefficient.
Do you have a way to get to a particular line that does not force you to think too much about how to get there ?
Of course we do: You can jump by searching for line contents with C-s, you can do an operation a certain number of times with M-<number> <operation>, and do an operation four times with C-u <operation>, which chains, so you can do an operation 16 times with C-u C-u <operation>.
If you want to jump to a specific line number, you can use M-g M-g <number>, or (because C-u also provides numerical arguments) C-u <number> M-g M-g.
Finally, many motion commands set the mark, so you can use C-x C-x to return to where you were and select all text between your previous and current locations.
Oh, and if you want something even better, you can use C-` to jump to the location of compiler error if you use M-x compile, you can use ag.el or helm-ag for ag integration, Ace-Jump, which is similar to EasyMotion, built-in exuberant ctags integration (and a built-in ctags clone, etags), packages for cscope integration (if you're using C), and fiinally semantic, which provides a variety of parser-based tooling if it's supported by your language.
But you can also just use C-n, etc. and we won't judge you for it.
> "But you can also just use C-n, etc. and we won't judge you for it."
This is probably the biggest selling point of the Emacs community. They're not going to try to guilt or shame you into using more efficient or more advanced commands. If C-n works for you, use it!
Of course. We can't judge you. Your configuration and setup is likely so different that unless we meet up in person, it's impossible to tell who is more efficient.
It's really not different, except that we have more, better options for how to go about it. The difference is, you can just use C-n, and nobody will complain that you're doing it wrong. Well, not too much, anyways.
Sounds like the options are the same. Note that it isn’t some kind of Vim standard that j shouldn’t be used repeatedly, just this author’s opinion. I do it all the time.
> How does Emacs help with this particular problem?
What, inefficiency? Inefficiency wasn't the problem. The problem was having to focus too much of my mind on how to use the editor. Muscle memory is invaluable, and Vim just doesn't let my muscle memory take over if I keep having to think about what's the most "efficient" way to move around or change text. Emacs lets my muscle memory take over easily. I just hit C-n or M-S-] a lot. It's inefficient, sure. But who cares? I never realize I'm doing it, and I never feel blocked having to wait until I get to the line I want to.
> The problem was having to focus too much of my mind on how to use the editor. Muscle memory is invaluable, and Vim just doesn't let my muscle memory take over if I keep having to think about what's the most "efficient" way to move around or change text.
IME, you do develop muscle memory in terms of using more "efficient" ways of navigation and text manipulation after using vim for a while. I guess it's sort of like learning how to drive a vehicle equipped with a manual transmission. At first, you're thinking more about how to shift through the gears and use the clutch. After a while, you don't really think about it too much while you're still doing it. After driving a bit longer, you start to get a feel about which gear to choose for a given traffic situation.
So, similarly, you get a feel about which keybinding to use to change certain types of text or do certain movements without having to think too much about it.
Normal vim users aren't thinking about the most efficient way to perform an edit, but rather just go with muscle memory. Said vim users also don't write blog articles on how to be more efficient with vim.
Well after 5 years of using Vim, the muscle memory for more efficient operations never kicked in. I was either holding "h" and "l" to move around, or I was consciously thinking of the more efficient combined operations like "f.ce.com^[". And that conscious thinking was very distracting from the actual code I was editing.
I used vim for everyday use for almost ten years before I realized that navigating around with the keyboard would never be as good as clicking a mouse. All the mental overhead of trying to be efficient with vim, for me at least, ended up being a bit of a false oasis.
I happily switched to Sublime for two years and then VS Code. I still use emacs with Clojure though.
Similar story here. I use IntelliJ for Java and Emacs for Clojure. We're porting our codebase from Clojure to Java at work, so soon it'll all be IntelliJ, which will be pretty sweet. I do kinda miss Paredit, but IntelliJ makes up for it with lots of other pretty sweet features.
Out of interest did you try using the Vim plugins for Clojure?
I'm only playing, but found a good set-up with vim-fireplace; vim-clojure-highlight; vim-sexp; Vim-sexp-mappings-for-regular-people; vim-surround and luochen1990/rainbow
Although I agree with your comment, this particular article makes no mention of "fighting for an internet freedom". It's just a very regular - and not so sexy, IMO, product announcement... which proves your point of him being a regular business man.
You'd still want to do code reviews after mob/pair programming though, because:
- the whole team might not be here and needs to review the changes to catch up.
- doing the wrong thing as a mob is still doing the wrong thing, and you may need more eyes on your code to spot that (especially if everyone during the session was convinced that what was written is right)
- IMHO, even if 10 persons were involved in writing it, a later review of the code can still improve quality (because people will actually be reading the code rather than writing it, which will expose other kinds of issues)
Who reviews, if the mob consists of everyone? If I participated in developing a thing, I would have probably already made the oversight, wouldn't see an issue.
That raises an interesting idea, you split the team, the mob and non-mob, like learning vs testing data. Dedicate some fraction of the team to the mob, then rotate out members. It seems like most of the benefits are realized, if people need skills or compassion for other roles of the project expanded, they get their turn. If the team is large enough that the mob is a minority, you minimize the effect of downsides.
I don't see these as mutually exclusive. Introducing a compiler/type-checker can be (depending on your situation) a very concrete way of improving the way code is written.
It has a bit more content than the landing page IMHO.