Microsoft switches to git



  • @magus Sorry I disagree

    The 2nd or 3rd time you approach the same problem you are likely to have a better understanding of how it works.

    I am pretty handy when fixing bicycles, while I appreciate that they are much simpler than a software system due to it being an analogue system the domain of what is considered working is far larger. You get very attempt at the whole mechanics of finding a puncture, you also get very good at indentifying what isn't and what is fixable, whether you can bodge another tube you have which isn't of the same size (e.g. using a 29er mountain bike inner tube on a racing bike wheel). Same with more complex stuff like the gearing, I could make 9 speed system work with 7 speed parts (under certain circumstances of course), If I damaged a derailleur.

    Knowing a system/domain very well lets you know exactly what can and cannot be done with it, same works for knowing a particular type of problem well. You may even see other problems that initially look rather different but underneath are quit similar.

    For a code example, I am really good with ASP.NET WebForms (circa 2005-2008), I can make it do things that it really wasn't supposed to do without having to use String Builders or any of that nonsense because I really understand WTF it is doing.



  • @lucas1 And that has exactly what to do with code katas, now?



  • @magus I've explained why.



  • @thecpuwizard said in Microsoft switches to git:

    Have you ever seen this book?

    Seen? Yes. Read? No.

    @thecpuwizard said in Microsoft switches to git:

    Perhaps there are a number of books/material you might want to catch up on, including Katas developed/published
    by Robert (Uncle Bob) Martin...

    I've read a ton of books on software development. I'm not interested in books on "programming", as that's just one tiny piece of the pie and the piece I'm personally least interested in.

    Have you read The Macintosh Is Not a Typewriter, The Inmates Are Running The Asylum, The Design Of Everyday Things, etc? That's shit that interests me.

    Programming is not an end; it's a means. It's not art, it's instruction. It's not exciting, it's tedious.



  • @lucas1 You have not, in fact. Katas are not complex things. They're really simple things by definition. And most often, people will talk about having a particular method they use as a code kata, daily, for years.

    You're talking about something entirely different.



  • @magus No. I think I got it fine.



  • @lucas1 As good as everything else you argue, I'll freely admit.


  • Discourse touched me in a no-no place

    @blakeyrat said in Microsoft switches to git:

    Programming is not an end; it's a means. It's not art, it's instruction. It's not exciting, it's tedious.

    As with so many activities, programming is what you make of it. It most certainly can be just tedious grind, or it can be more satisfying than that. It can even be art, though the vast majority of programs are not. This shouldn't surprise us: the huge majority of daubs of paint on walls are not examples of great murals; most are just about slapping a layer of paint on to stop the weather getting at the wood underneath. A huge proportion of worldwide video output is not arthouse cinema; there's far more footage of dogfood adverts than art cinema.

    But none of this says that programming cannot be art, and some is just that (even if it is a small proportion). Heck, even some ads — a totally and blatantly commercial purpose — are clearly simultaneously wonderful works of art. The opportunity to create something that is better than it needs to be — that is a demonstration of art in some sense — is within anyone working in the most marginally creative role.

    That doesn't mean that my hacks in Python are works of art though. It's just boring old Python; I'm just trying to make sure I won't want to vomit up my toenails when I have to go back and look at it again in a few months…



  • @dkf I could not disagree more vehemently. A program can be used to create art (and in fact I've done it myself), but the program itself is not art.



  • @magus I never said they were katas, I said it is similar to what I tend to do generally while developing. Apparently "practice makes perfect" is some sort of advanced concept :rolleyes:



  • @blakeyrat Something being somewhat of an art isn't the same as art. You are either being moronic or deliberately obtuse.

    Also programming can be art.

    0_1522786829592_e5d8d169-c901-4e28-b76a-e51dc06d4508-image.png



  • @lucas1 Deliberately obtuse, like typing:

    Something being somewhat of an art isn't the same as art.

    ?

    Because that's so obtuse, I have no idea what you're saying.


  • ♿ (Parody)

    @blakeyrat said in Microsoft switches to git:

    @dkf I could not disagree more vehemently. A program can be used to create art (and in fact I've done it myself), but the program itself is not art.

    If modern art has taught me anything, it's that "That's not art," is never true.



  • @boomzilla Well if you use the modern art interpretation that "anything anybody anywhere calls art obviously is art", then yes. Whatever.



  • @blakeyrat said in Microsoft switches to git:

    Because that's so obtuse, I have no idea what you're saying

    That is a well known saying that is used all over the English world. In our case it is the title of a book "The Art of Software Testing".


  • ♿ (Parody)

    @blakeyrat But even without that I wouldn't agree that a program can't be art.



  • @boomzilla Exactly, I used a trite example in the perl camel which is infamous to make the point obvious.



  • @boomzilla Then maybe my viewpoint is a program can be art but shouldn't be art, because programs that are art are usually shitty at what they're supposed to actually be doing. See LaTeX for an example, which has source code that people (idiots) have called "art", compared to something like InDesign which does not, and yet which is FAR BETTER at the same task.


  • ♿ (Parody)

    @blakeyrat You're just using different metrics than other people, but given that you use version control software for doing backups this doesn't come as much of a surprise.



  • @blakeyrat LaTeX is a document preparation system. How the document looks has nothing to do with the look and feel. It exactly the same idea as HTML with CSS.


  • Discourse touched me in a no-no place

    @lucas1 said in Microsoft switches to git:

    LaTeX is a document preparation system.

    And a turing-complete programming language. There are even some macro packages that make the programming bits only nasty rather than truly awful…



  • @lucas1 said in Microsoft switches to git:

    LaTeX is a document preparation system.

    Yes but not a good one, which is my point.



  • @blakeyrat I wrote my dissertation in it, it worked perfectly fine for me.



  • @dkf Had no idea, I doubt many of the users really care. I think it is used mainly for engineering (classic that is) and I used it at uni because it was better than bloody Open Office (which was the alternative that was in the Unix labs). Then again I am a web developer so writing large documents with a programming language is something I based my career on.



  • @lucas1 no one cares if you managed to make something work. That is completely orthogonal to the concern of it being good.



  • @blakeyrat said in Microsoft switches to git:

    Have you read The Macintosh Is Not a Typewriter

    Google makes it a hard sell

    0_1522788855495_f1f9cb99-df57-47c8-afe8-29c29bfd2218-image.png



  • @magus Again I didn't say "I managed to make it work".

    I said "it worked fine for me". Almost anytime anyone says this, they mean the following:

    This was fit for purpose for what I was using it for.

    They are two completely different things.

    For writing very large documents that are scientific, LaTeX is superior to almost every other alternative out there. It is used extensively in University Engineering departments to the point where they will give you a lecture and course work. Almost every uni lecturer of mine used it in one form or the other.



  • @blakeyrat

    Just in case you try to claim it isn't a well know saying, this is a well known book (it isn't about Motorcycle maintenance BTW just in case you say something moronic).

    Also almost forgot:

    https://www.amazon.co.uk/Art-Software-Testing-Third/dp/1118031962


  • Discourse touched me in a no-no place

    @lucas1 said in Microsoft switches to git:

    I think it is used mainly for engineering

    It was originally designed for maths — Knuth was pissed off with idiot publishers mangling the formulas in the typescripts of his papers and wanted a system that could directly produce correct camera-ready copy — but it got pretty wide takeup in the mathematically-inclined sciences too. For a long time, it was easy to spot what tools people were using when doing reviewing: if the formulas were mangled to heck and back and stuffed over the layout of the page, you knew you were dealing with someone who used Word. And people were never sure with me because I'd use LaTeX with a modern font selection. 😄

    Word still doesn't cope well with reflowing a document when more material is inserted near the beginning, whereas LaTeX tends to do a better job if possible. Also, Word starts to get a bit shirty once the document has a few hundred pages.



  • @lucas1 said in Microsoft switches to git:

    For writing very large documents that are scientific, LaTeX is superior to almost every other alternative out there. It is used extensively in University Engineering departments to the point where they will give you a lecture and course work. Almost every uni lecturer of mine used it in one form or the other.

    Not because it's good, but because they've always done it that way.

    @lucas1 said in Microsoft switches to git:

    Just in case you try to claim it isn't a well know saying,

    Claim what isn't a "well know" saying? Are you drunk again? What the fuck saying are you talking about?

    @dkf said in Microsoft switches to git:

    Word still doesn't cope well with reflowing a document when more material is inserted near the beginning, whereas LaTeX tends to do a better job if possible. Also, Word starts to get a bit shirty once the document has a few hundred pages.

    Except Word doesn't even compete with LaTeX. You're comparing apples to oranges.



  • @blakeyrat said in Microsoft switches to git:

    Claim what isn't a "well know" saying? Are you drunk again? What the fuck saying are you talking about?

    The one you didn't understand (allegedly). "Just because there is an art to something doesn't mean it is an art". Obviously it a play on words on the well know term "there is an art to doing < insert task x>".

    This isn't a strange thing to say if you speak English, so you are pretending not to understand when convenient to basically hand wave the original complaint. You do this all the time it is pathetic.



  • @blakeyrat said in Microsoft switches to git:

    Not because it's good, but because they've always done it that way.

    It appears to be fit for purpose as plenty of people use it without problem. However because you want to complain about it apparently everyone in the whole world is wrong.

    Are you going to complain about Qwerty keyboards next or that most bicycle chain-sets are round not oval (oval are more expensive to produce and have to be specially fitted)?


  • Discourse touched me in a no-no place

    @blakeyrat said in Microsoft switches to git:

    Except Word doesn't even compete with LaTeX. You're comparing apples to oranges.

    Both are systems for writing documents; the key end product is something you print out and read (whether for informational or entertainment purposes). Both systems can also produce output in other related formats (e.g., PDF). While they're very different in terms of how they reach the goal, they very much are comparable in terms of key value offered to users. There are other competitors in this space too.



  • @lucas1 A lot of things that work aren't good. You won't starve eating McDonalds, but that doesn't make McDonalds good food.

    This happens for example whenever we have a discussion about how popular, say, PHP is. Sure PHP is popular. Sure a lot of very large sites have used it. But nobody ever claimed you couldn't make a large site in PHP; people have simply claimed that PHP is a bad language. For all we know if your large site had been written in some other language like C#, it'd run 4 times faster and take half the maintenance.

    @dkf said in Microsoft switches to git:

    Both are systems for writing documents; the key end product is something you print out and read (whether for informational or entertainment purposes). Both systems can also produce output in other related formats (e.g., PDF). While they're very different in terms of how they reach the goal, they very much are comparable in terms of key value offered to users. There are other competitors in this space too.

    Yes both let you type in shit and print it if you want, natch.

    But Word is a word processor, not a desktop publishing app. It just happens to be a word processor with a lot of desktop publishing features. (Which makes sense, because it has a lot of everything features, because it's freakin' Word. You could also claim it competes with Illustrator, for example, because it has vector drawing tools.)


  • ♿ (Parody)

    @blakeyrat said in Microsoft switches to git:

    Except Word doesn't even compete with LaTeX.

    Except that obviously a lot of users try to use them for the same thing. Careful or people might think that you've abandoned your user / usability point of view.



  • @blakeyrat said in Microsoft switches to git:

    @lucas1 A lot of things that work aren't good. You won't starve eating McDonalds, but that doesn't make McDonalds good food.
    This happens for example whenever we have a discussion about how popular, say, PHP is. Sure PHP is popular. Sure a lot of very large sites have used it. But nobody ever claimed you couldn't make a large site in PHP; people have simply claimed that PHP is a bad language. For all we know if your large site had been written in some other language like C#, it'd run 4 times faster and take half the maintenance.

    No one is disputing that.

    However as with a lot of things you will just say it is wrong because you don't like it.

    Also there is a cost / benefit analysis to almost anything. Sometimes it is less effort to live with the existing situation rather than "Do it properly".

    e.g.

    If I am a PHP developer and I want to make a simple website, it would be a total waste of time to learn C#,.NET and the rest of the stack with all the conventions to write a simple website. While it could help me in the future, it isn't going to be immediately beneficial.

    To make another example. Sitecore is probably one of the the best CMS that money can buy,. However if you wanna set up a Blog ... well it probably best to just use Wordpress and make sure you keep on top of updates and make sure you got regular database backups.



  • @boomzilla said in Microsoft switches to git:

    Except that obviously a lot of users try to use them for the same thing.

    Right.

    @boomzilla said in Microsoft switches to git:

    Careful or people might think that you've abandoned your user / usability point of view.

    Not even sure what you're trying to say here. The reason (likely) that people use Word instead of LaTeX is that they need desktop publishing, can't cope with LaTeX's shitty user interface, and Word is the only equivalent tool they have on their computers. That says nothing about Word's usability, except that it's way better than LaTeX's.


  • ♿ (Parody)

    @blakeyrat said in Microsoft switches to git:

    Not even sure what you're trying to say here.

    It's me trying to make sense of you saying that the two don't compete, which I can only make sense of from the perspective of Microsoft or the developers or whomever, because it's obviously competing for users in the sense that users want to use it for the same purpose as LaTeX.

    @blakeyrat said in Microsoft switches to git:

    That says nothing about Word's usability, except that it's way better than LaTeX's.

    My point was that you weren't considering the users when you said they don't compete. I'm not really sure what you were thinking about when you said it, but it obviously wasn't about users. Or you were just wrong. 🤷🏻


  • BINNED

    @grunnen said in Microsoft switches to git:

    Interestingly, Facebook has done something similar but with Mercurial:

    Apparently they could do it without a virtual file system

    Facebook's main source repository is enormous--many times larger than even the Linux kernel,

    Which leads me to the question of: Why? :wtf:

    It's just a stupid retarded website, why is it many times larger than the Linux kernel or even comparable to Windows? Sure, their massively scaling backend must be amazing, but the user facing part is just showing some stupid pictures, comments, and a messenger...


  • ♿ (Parody)

    @topspin Eh...and groups, and moderators for those groups. And games. And events. Users can live stream video. You can buy movie tickets, order food or have a fundraiser.

    Eh...there's a lot in there, and none of that includes all the backend predictive stuff or the image hashing things and automatic badthought moderation, personal information exfiltration, etc, etc.


  • Considered Harmful

    @magus said in Microsoft switches to git:

    @lucas1 no one cares if you managed to make something work. That is completely orthogonal to the concern of it being good.

    Boy, that brings back memories. Arguing with @lucas1 on that point was I think the first post I ever made here.



  • @topspin I have built a basic version of Youtube with Flask + Python + Postgres. My website on say on Azure would probably scale up to maybe a few hundred users if I am lucky on a default instance. If I wanted it to scale past that and not incur significant cost.

    Facebook had to do with clever stuff with Memcache:

    Here is the more upto date Github Wiki:

    Also their deployments work via bittorrent.

    Yeah I can deploy to my site using ms build profile and octopus and that works if you have less than a few hundred nodes but you once it gets to a few million nodes it requires a lot more engineering.




  • 🚽 Regular

    @blakeyrat said in Microsoft switches to git:

    The reason (likely) that people use Word instead of LaTeX

    ...Is that people have heard about Word.

    Which is not to say the rest of your post isn't correct.


  • Discourse touched me in a no-no place

    @topspin said in Microsoft switches to git:

    Which leads me to the question of: Why?

    Why not? The Linux kernel is just an OS kernel (and peculiarities of how it is managed keep the repository size smaller than normal for a project of that scale). Facebook will have a lot more application code, and much of that will be to do with user interfaces, which just tend to take lots of space to describe well.



  • @lucas1, @Magus, et. al.

    As I oft post, I do not believe there is "one true way" or that any approach is universally better/worse than another. All I can talk about is my experiences. For the past 15 years, my primary focus has been evaluating why "A" is better than "B" for team X at time T, and how the results change for various values of X and T.

    I do not disagree with the approaches put forth by lucas1 or Magus, but probably address from a different angle. Like lucas1, I am highly iterative (an inner loop may be 2-10 minutes), but start with very small independent blocks and integrate. Like Magus, "templates" (the word can have many meanings) are a common way to handle repetitive work.

    On the other hand, I find that one does "sit around writing the same code over and over". Semantic (rather than lexical) and topological comparison tools provide a means to actually measure this, and the results usually surprise people when they are presented with an analysis of their own work.

    Practice ["repeated exercise in or performance of an activity or skill so as to acquire or maintain proficiency in it."] is a given in so many fields, but for some reason much of the software community has believed that this did not apply to their field for some magical reason. Fortunately [IMPO], this view is changing in many segments with an increased focus on practice so that when it comes time for the "real work" it is done with maximum performant can proficiency, resulting in a much higher level over overall effectiveness.



  • @lucas1 said in Microsoft switches to git:

    Also there is a cost / benefit analysis to almost anything.

    100% agreement...

    Sometimes it is less effort to live with the existing situation rather than "Do it properly".
    ...
    While it could help me in the future, it isn't going to be immediately beneficial.

    This is an interesting (and non-trivial) aspect. Does short-term matter, or does long-term, or some complex interplay of the two?



  • @blakeyrat said in Microsoft switches to git:

    @boomzilla Then maybe my viewpoint is a program can be art but shouldn't be art, because programs that are art are usually shitty at what they're supposed to actually be doing. See LaTeX for an example, which has source code that people (idiots) have called "art", compared to something like InDesign which does not, and yet which is FAR BETTER at the same task.

    In the sense that architecture and engineering can also be appreciated as art I don't see any problem in treating software as art - if its form and function is sufficiently good.

    At a finer-grained level, clever algorithms can be expressions of creativity, with beauty or elegance - so are on a continuum with 'art', but 'beautiful' programs are rare. I think the term is applied far too widely to code that just slavishly follows the latest fads or which involves excessive application of Complicator's gloves. That's really irritating - it's faux-emotion, like the over-use of 'love' applied in a software context.



  • @japonicus said in Microsoft switches to git:

    @blakeyrat said in Microsoft switches to git:

    @boomzilla Then maybe my viewpoint is a program can be art but shouldn't be art, because programs that are art are usually shitty at what they're supposed to actually be doing. See LaTeX for an example, which has source code that people (idiots) have called "art", compared to something like InDesign which does not, and yet which is FAR BETTER at the same task.

    In the sense that architecture and engineering can also be appreciated as art I don't see any problem in treating software as art - if its form and function is sufficiently good.

    At a finer-grained level, clever algorithms can be expressions of creativity, with beauty or elegance - so are on a continuum with 'art', but 'beautiful' programs are rare. I think the term is applied far too widely to code that just slavishly follows the latest fads or which involves excessive application of Complicator's gloves. That's really irritating - it's faux-emotion, like the over-use of 'love' applied in a software context.

    I have created a new Thread for the "Art or Science discussion" : https://what.thedailywtf.com/topic/24919/is-computer-software-art-or-science



  • @dkf said in Microsoft switches to git:

    @topspin said in Microsoft switches to git:

    Which leads me to the question of: Why?

    Why not? The Linux kernel is just an OS kernel (and peculiarities of how it is managed keep the repository size smaller than normal for a project of that scale). Facebook will have a lot more application code, and much of that will be to do with user interfaces, which just tend to take lots of space to describe well.

    Can you tell something about these peculiarities (or give a pointer)?


Log in to reply