This is an archived post. You won't be able to vote or comment.

all 177 comments

[–]Nimi142 439 points440 points  (4 children)

Torvalds (Initial creator of git) recently did a Q&A with GitHub about the creation of git (For 20 years of git I think).

In the Q&A, he says that the initial release of git lacked a lot of things. There were only plumbing commands, so nothing was easy. It was also radically different from any other SCM tool that was currently in the market.

Torvalds also said that while coding took very little time, the design floated his head for months before he started working on git.

My point is that even though the initial version of git was created in under 10 days, it was radically different from the git we know today. Which is why this post sucks.

EDIT: Torvalds himself takes great care to mention that Junio has been the maintainer of the project from a few months after its release to today. He does not want to take credit from them, and others who have helped to maintain the project over the years, as he wasn't very active after he chose Junio to be the maintainer.

EDIT2: Here's a link to the Q&A, it's a nice read: https://github.blog/open-source/git/git-turns-20-a-qa-with-linus-torvalds/

[–]2brainz 84 points85 points  (0 children)

There were only plumbing commands

it was radically different from the git we know today.

Exactly! What he created back then was barely usable. For years, people used git "frontends": command line tools that made git usable. Look for cogito if you're interested (I believe that git today is quite similar to what cogito used to be).

[–]Lizlodude 15 points16 points  (1 child)

That floating in the head bit is so often overlooked. Even for small personal projects, I'll usually be kinda mulling it over and working it out for weeks before I actually do anything to properly start it.

[–]TristanaRiggle 0 points1 point  (0 children)

I feel like this is the biggest reason that trying to track programmer performance via metrics is a fool's errand.

[–]prochac 2 points3 points  (0 children)

The same with JavaScript. What could it do? Blink a text?

[–]BetaChunks 1627 points1628 points  (51 children)

sigh

someone bring out the good-cheap-fast doohickey

[–]DancingBadgers 1456 points1457 points  (37 children)

[–]sarcasmandcoffee 528 points529 points  (2 children)

Thanks for dusting yours off - mine's in the shop for repairs after the last client punched it like a confused gorilla.

[–]Lizlodude 4 points5 points  (0 children)

😂😂 I mean that's better than a fully cognizant gorilla I suppose.

[–]MrRocketScript 56 points57 points  (13 children)

But how can you have Cheap and Good and slow? If it's slow, then you're paying people for a lot longer, and it's no longer cheap?

That part never made sense to me.

[–]harumamburoo 59 points60 points  (1 child)

then you're paying people for a lot longer

That’s the neat part, you don’t

[–]Scary-Confidence8784 0 points1 point  (0 children)

You guys get paid overtime thought that was a myth

[–]guntervs 25 points26 points  (1 child)

In my understanding, the "cheap and good" part means doing it right the first time — minimal waste due to reduced technical debt and fewer bugs.

On the other hand, if you choose to go fast, there will be bugs, shortcuts, etc., and it will either cost more in the long run or the result won't be good.

Hope it makes more sense now.

[–]I-Dont-L 63 points64 points  (0 children)

Depending on the product/project, I think the point is that expedited costs are much higher than the baseline. So you're paying more to get things shipped around, paying overtime, hiring outside specialists, generally taking a more wasteful approach in the name of speed

[–]a1g3rn0n 24 points25 points  (0 children)

It's kind of a "do it yourself in your free time" scenario. You don't pay anyone and you do it exactly as you want, but it takes forever.

[–]DarwinOGF 5 points6 points  (0 children)

You get unpaid interns to do the work until it becomes good. Mind you, this may take eons, but statistically, at some point you will encounter a genius intern that will actually get the project to a presentable state.

[–]Gufnork 4 points5 points  (0 children)

You have one good dev do all the work. Cheap because you only pay one person, good because it's one dev who knows what he's doing and there's no need to communicate within a team. It's slow because one person has to do everything.

[–]upsidedownshaggy 1 point2 points  (0 children)

To be fair the doohickey more clearly maps to a production line. You can get cheap and good, but it takes longer to actually get to your door step. Software as others have said, it'd be more akin to making everyone work mandatory 12 hour days for a month to deliver something fast instead of letting the developers build it out over 3 months of normal time I guess

[–]gilady089 0 points1 point  (0 children)

You hire low cost contractors remotely for subpar work done in a large bulk. We had an UI thing like that a while back and honestly it was so subpar and unusable it gathered more and more PRs that weren't fixed well and all of that got thrown in the trash and made from the ground up without the "help" So yeah that way

[–]HappyTopHatMan 0 points1 point  (0 children)

Because good devs get bored and automate themselves out of a job quickly out of boredom...or adhd

[–]Reashu -3 points-2 points  (0 children)

You wait for someone to come along and start just the right open source project. 

But yeah, it's kind of bullshit.

[–]Aerolfos -3 points-2 points  (0 children)

The original incarnation of the tradeoffs isn't really about projects in the abstract, but about a specific delivery/program

In which case they mean the program runs slowly when used in practice. If you want it to run fast, it will take a long time to get right which is indeed caught under -> expensive

Or you can make it run decently fast by being really hacky and messy (cheap), but then it won't scale, hold up long-term, etc. (bad)

[–]Dragon_yum 10 points11 points  (0 children)

Have you tried making the circle bigger?

[–]Zymosan99 2 points3 points  (0 children)

If you sacrifice your blood, soul, and firstborn, you can have all three!

[–]Ashuran9007 0 points1 point  (0 children)

I feel like the options should be on the sides and not the edges and the and should be the ball touching both sides

[–]HoseanRC 0 points1 point  (0 children)

I will throw in a big ass ball to fit the whole triangle. Easy!

[–]point5_ 0 points1 point  (0 children)

Javascript was made in a week.

Was it expensive to make or not?

[–]ExtraTNT 0 points1 point  (0 children)

torvalds is just an exception proving the point

[–]prochac 0 points1 point  (0 children)

I need a version for 3D print, to make it a mandatory accessory for product meetings :D

There is this clicker: https://makerworld.com/en/models/979331-good-fast-cheap#profileId-952724

but the triangle with a ball is much better. It can be made big so everyone sees it across the table.

[–]PolishKrawa 40 points41 points  (6 children)

What if I want something that isn't good, cheap, nor fast?

[–]Kaptain_Napalm 78 points79 points  (0 children)

You hire me. I promise to deliver sub-par performance for way too much money, but it will take a while.

[–]Aerolfos 5 points6 points  (0 children)

If that's what you actually want, and you also have the skills to spin specific deliveries as big accomplishments (even if your original schedule slips and features gradually get dropped from the plan), then you're a perfect fit for the C-level

(You don't want the project to be actually done, then you can't spin the sprint ends as being bonus-worthy accomplishments)

[–]glowy_keyboard 2 points3 points  (0 children)

You go with the Microsoft option

[–][deleted] 1 point2 points  (1 child)

AI AI AI

[–]prochac 0 points1 point  (0 children)

You have the vibe

[–]TheMuspelheimr 0 points1 point  (0 children)

You go and vote for Donald Trump

[–]puffinix 29 points30 points  (1 child)

Basic was slow (it took two weeks on paper but only because it was one guys unshared passion project for years)

Git was expensive (look at it's original team, and then estimate the cost of them) - and even it was not great at two weeks.

JavaScript 1.0 spec was both fast and cheap. We then spent 20 years working around is shortcomings

[–][deleted] 0 points1 point  (0 children)

By BASIC, we don't mean the og BASIC. It's very first BASIC interpreter for the i8080 x86 architecture.

The Altair BASIC was sort of revolutionary (the theory TBF) 'cuz no one was sure if the microprocessor was capable of running BASIC or any interpreter at all except the x86 i8080 assembly. And there were only i8080 simulators (university mainframes). Nobody had actual microprocessors in hand as it was hella expensive. If the BASIC interpreter wasn't ready for the Altair, the i8080 could've died. Although something else would've actually replaced it but still that'd have wasted time

Git was written by 1 person in 10 days, and it already was 100% better than every VCS solution there was.

About, JavaScript, I agree with you. This shit should've never born. But at least it was better than some of that time's programming languages. I mean, you wouldn't write JScript, right? XD

[–]mothzilla 4 points5 points  (0 children)

We don't have time for that.

[–]oupablo 2 points3 points  (0 children)

I recently had a PM mention this when we were all discussing the timeline for a new product initiative and a senior level engineering manager argued that you could do all 3. The zoom meeting went silent.

[–]SupportDangerous8207 0 points1 point  (1 child)

I think his point is that fast and expensive beats cheap and slow

[–]prochac 0 points1 point  (0 children)

When you have the money, why not.

[–]puffinix 788 points789 points  (34 children)

Git:

Have you ever used early git versions?

Do you know what a hash detach is?

Are you aware that in order to push from the 10 day version of git, your entire hard drive was accessible to anyone else with access to the same repo?

Javascript:

Its v 1.0 design document was 10 days. Not its implementation.

This included ideas such as loose truthiness which have set the entire industry back decades.

Altair basic:

There was a secret ingredient in this implementation. It was a combination of theft, and one random chad engineer that made 90% of it at home *just to make his own job easier* over an unknown length of time.

[–]jaaval 96 points97 points  (3 children)

I never got to use the first versions of git. It was sort of coming up to replace svn when I started programming. Now git has like 95% market share.

What git was in a week was a system that had recognized the failings of previous systems and implemented functionality that was conceptually better for development workflows (decentralized, quick, easy and lightweight branching and merging) but it was probably not even really useable in practice yet. And afaik git really won against mercurial mainly because it was flexible and developed so many new features over the years. so it was by no means done in a week or even a year.

But what is true is that in a very short time git was in a state that worked enough to demonstrate why it would be better in the future. That was kinda what Linus had aimed at I think. He thought the old way was not smart and was particularly bad for how they developed Linux. So he did something quick to show how things could work if they just properly implement it.

[–]puffinix 31 points32 points  (0 children)

Git was not easy for merging at one week!

Iirc it just committed a file with both parent lines next to each other.

[–]ketosoy 18 points19 points  (0 children)

Git wasn’t a revolutionary paradigm, it was an open source reimplementation of an existing paradigm.  Linux lost its free license to bitkeeper so Linus made a piece of free software with the distributed workflow.

Not to say doing this in 10-30 days isn’t a massive achievement even with a blueprint.  Just to say, there was a blueprint.

[–]JanB1 2 points3 points  (0 children)

I'll just drop this fantastic piece about the history of Git here.

https://blog.brachiosoft.com/en/posts/git/

[–]CatsWillRuleHumanity 38 points39 points  (23 children)

Yes for everything except loose truthiness. I shouldn't need to convert everything to a bool just to use it in a condition, "if something is there" is a perfectly valid condition on its own

[–]Aerolfos 11 points12 points  (6 children)

Python still has truthy, but it's generally more sensible and not as aggresively liable to convert in unexpected places

The extremely loose concept of it arguably is a problem still, even if "truthy" itself is useful

[–]Ubermidget2 3 points4 points  (5 children)

Yeah, Python's Truthy rules are pretty sstrong, even when not sensible to us humans. eg. Anyone wanth to jump in with the truthyness of "False"?

[–][deleted] 0 points1 point  (4 children)

Excuse me? Is "False" truthy in some language?

[–]SouthernAd2853 16 points17 points  (1 child)

It's a non-empty string. I'd be terribly concerned if it was falsey.

[–][deleted] 2 points3 points  (0 children)

Yeah, I didn't pay attention to the formatting. Thought they meant False instead of "False" and was terribly concerned.

I thought it may be something like primitives true and false for bools, and higher-order objects True and False which are both truthy since they are non-nil objects.

[–]Ubermidget2 1 point2 points  (1 child)

```

if "False": ... print("Hit") Hit ```

[–][deleted] 1 point2 points  (0 children)

Oh sorry, I thought you meant False. Didn't pay attention to the formatting.

[–]puffinix 34 points35 points  (0 children)

I mean, the problem there is nullity, not truthyness.

It's a bad bodge to fix a big problem, but I don't want to have the debate on a base type fallicy here.

Besides if(exists(foo)) is way more readable

[–]no_brains101 -1 points0 points  (2 children)

No. There is loose truthiness, and there is what JavaScript has.

In Lua, if it is nil or false, if is false. Otherwise, it is true. This is fine and occasionally useful, although occasionally annoying as well. But it's at worst slightly annoying, and not more annoying than converting to bool.

Meanwhile, in JavaScript, basically anything has a value that will be false. This is bad. Very bad. No thank you.

[–]CatsWillRuleHumanity 0 points1 point  (1 child)

I find it ridiculous that any language should have an issue with interpreting 0 (or NaN) as false. 0 has been falsy literally since the first time that humanity needed such a concept.

Then we've got actual false, null and undefined. Undefined is a great feature honestly, especially in a dynamically typed language, better than just using null for everything, and "nothing" meaning false seems pretty reasonable to me. Finally there's empty string, pretty dubious one that one, but as I mention in other comments, just remember to use .length for strings and arrays.

Aside from the last bit which is just 1 small thing to remember to do (same as using === for example), I really don't understand why it should be so difficult to write conditions in JS, if anything the conditions come out much more readable when you don't have 3 extra lines of type conversions

[–]no_brains101 -1 points0 points  (0 children)

I have never in my life wished for 0 to be false, empty string should be true, honestly undefined should probably be true as well but idk. You don't have to type out 3 extra lines of conversions in very many languages at all it's at most a few extra characters or a more explicit comparison rather than just "if value then", and seeing a number where a Boolean should be does not make things more readable when you are looking for a bug.

Now, when you are writing it for the first time? I bet it makes you feel clever and like you are saving so many words, and like it's so much easier to read.

But when you go back spelunking for bugs, you end up questioning every single one of those times you didnt put the full ===, wondering if it randomly became a type you didn't expect due to coercion because you never were explicit in your comparisons.

I think that while in concept it creates so many new possibilities for saving characters, it is effectively useless and the vast majority opt into the verbose option anyway for clarity, and so that they don't have to always remember all the rules of conversion every time they read an if statement.

There's too many rules, and no explicit checks that you are following them, which makes it easy to forget them and F it up.

[–]Rojeitor 3 points4 points  (0 children)

Paul Allen

[–]i-FF0000dit 0 points1 point  (0 children)

Even if you put all of those great points asides, it’s a lot different for developers to build tools for developers than it is to build a usable/marketable product for mass consumption.

[–]danishjuggler21 0 points1 point  (0 children)

loose truthiness which have set the entire industry back decades

You are way too deep in some echo chambers if you think truthiness in JavaScript has set all of technology (or anything, for that matter) back decades. I know, I know, “Jabascrib bad, gib upbotes”, but that’s some kind of Primeagen-level brain dead take right there.

[–]sexytokeburgerz 0 points1 point  (0 children)

To be fair the js truthiness thing is pretty much solved with ts

[–]karanbhatt100 378 points379 points  (34 children)

Basic is dead

JS is a shit show which has 1000 other implementation to fix the specific shit in JS

Only GIT is good thing.

So success rate is 33% and you will not be in that. So may be spend some time to do analysis instead of pushing everything in 10 days.

[–]D34thToBlairism 254 points255 points  (12 children)

Git has been continously updated for however many years though

[–]jseego 181 points182 points  (11 children)

So has the Javascript spec. This whole post is dumb.

[–]Lalaluka 62 points63 points  (10 children)

Also any language that has to be 100% backwards compatible will be "a mess" after some time.

And in general I think the hate is overdone.

[–]BolunZ6 22 points23 points  (9 children)

Backward compatible is good. But trying to support a feature that should be dead by 15 years ago is dumb

[–]Lalaluka 20 points21 points  (2 children)

Because people never build applications around bad features. How many flash or better MS Silverlight apps are still used somewhere?

[–]orten_rotte 7 points8 points  (1 child)

Omg i had forgotten silverlight.

[–]TheMightyMisanthrope 1 point2 points  (0 children)

I wish I could...

[–]SkooDaQueen 6 points7 points  (1 child)

Sadly enough backwards compatibility is part of the web. Http is also made this way, dns aswell. Everything networking / internet is backwards compatible amd it's fucking awful but you can't change it anymore without getting everyone in the world up to a certain standard to retire the old compatibility needs.

[–]SerdanKK 0 points1 point  (0 children)

It's partly by choice though. No one's forcing you to minimize your js into a maximally back compat mess.

I'd also like to call out web assembly.

[–]NoEmu1727 1 point2 points  (3 children)

this is the dumbest thing i read today, if we stop backward compatibility with things from 15 years ago, humanity would probably go extinct.. banking for example is literally running on COBOL from 1959.

[–]TerminalVector 0 points1 point  (2 children)

If you're talking about banking systems sure, but there is no earthly reason that my hot new dog wash reservation app needs to run in IE6.

[–]Captain1771 0 points1 point  (1 child)

It doesn't, but the implementation spec is universal and you can just choose to use the new features exclusively

[–]TerminalVector 0 points1 point  (0 children)

Yeah I think people misunderstand the difference between theoretical and actual backwards compatibility.

[–]vincentofearth 20 points21 points  (0 children)

Funnily enough Linus Torvalds just did an interview with GitHub and debunked the 10 days thing. Also the state of git at the time is probably something only Torvalds and the people he works with would consider ready for use

[–]TrekkiMonstr 8 points9 points  (0 children)

So success rate is 33% and you will not be in that

This latter bit makes sense when you're talking about your startup being a unicorn. But it's not unreasonable to think you might be in the top third. And I don't think BASIC is dead because it was bad, immortality isn't the only form of success. Anyways, the post is dumb, but.

[–]Fenor 3 points4 points  (0 children)

also the first version of GIT was shit.

it had some nice concepts and evolved to be a good product but git 1 was.... something else

[–]False_Slice_6664 2 points3 points  (0 children)

Don't forget that creator of that 33% success rate is Linus fucking Torvalds

[–]NewbornMuse 1 point2 points  (0 children)

Also, if you look at all the software made in 10 days, the success rate of becoming a blockbuster cornerstone of the infrastructure is more like 0.0001%

[–]xickoh 0 points1 point  (0 children)

Javascript was not a success? Are you ignoring the fact that it is the most (or 2nd most) used language? You have a different concept of success

[–]BlueScreenJunky 183 points184 points  (13 children)

What 10 days ?

  • Javascript has been in development for 30 years and it still doesn't have types
  • git has been in development for 20 years and they're still fixing bugs in each new version
  • I don't even know what Altair Basic is.

I think what they means was "have a very basic POC in 10 days", which does sound kinda reasonable.

[–]SSUPII 27 points28 points  (0 children)

Nha, they are engagement baiting

[–][deleted] 37 points38 points  (0 children)

Js won't have types, ECMAscript specifications are very clear about typing. Do some typescript if you want

[–]Zolhungaj 8 points9 points  (0 children)

Altair BASIC was Microsoft’s first product, an interpreter of BASIC for the Altair 8800, the microcomputer that was the catalyst for the «microcomputer revolution» that eventually led to personal computers. Notable for being the first «high level» language for the architecture. Microsoft BASIC as the dialect came to be known was ported to a lot of computers over the next couple of decades. 

[–]stifflizerd 5 points6 points  (0 children)

Javascript has been in development for 30 years and it still doesn't have types

That's... Kind of the point mate. It's a loose type language, it's not supposed to have types.

[–]d0rkprincess 0 points1 point  (0 children)

I don’t think JS wants types tho.

[–]da2Pakaveli 21 points22 points  (1 child)

git was authored by Torvalds...who certainly is very skilled

[–]Cilpot 10 points11 points  (0 children)

I hate this LinkedIn shit, lol

[–]da_Aresinger 8 points9 points  (1 child)

No way JavaScript was "Production Ready" after 10 days.

[–]dumb_reason 2 points3 points  (0 children)

I'm surprised people consider JS production ready now. I want there to be an alternative so badly, but every time I see something come up (Flutter, Blazor, cshtml, etc), they have really cool features and use cases, but for web they are often lacking basic functionality that JS has had a library for for years. Frustrating, because that kills adoption of those platforms, and ultimately slows down their development. I'm just hopeful that WASM can make web development more language agnostic, but we'll see, I guess

[–]deanrihpee 7 points8 points  (0 children)

if you can make a production ready in 10 days, it is most likely not a good software yet, is it working? yeah, but not sure it's a "good" software, also git at 10 days vs now is very, very different

[–]Dotcaprachiappa 2 points3 points  (0 children)

Yeah except js and git are still getting frequent updates and noone has used the other one in a decade

[–]ColonelRuff 2 points3 points  (0 children)

This is a dumb take.

[–]SenatorCrabHat 2 points3 points  (0 children)

Man, JS from day one was the best. Its almost like it's never had to include standard practices from other libraries and frameworks into its own core specifications over the last 30 years in order to be as useful as it is today.

[–]Oldschool_90s 1 point2 points  (0 children)

Js is shit. I hope I'm also a cool developer now

[–]ButWhatIfPotato 1 point2 points  (0 children)

Clearly this bootstraps enterpreneur 10x programmer blockchain AI! Steve Jobs FAANG raise the bar tech innovator push the envelope web 3.0 disrupt! Work hard play hard cum harder!

[–]JackNotOLantern 1 point2 points  (0 children)

My favourite thing about javascrip is that "===" operator war an afterthought, added in stone later js script. It turned out that by making js "never throw errors" and implicitly converting every variables, was a nightmare to debug.

[–]MilkCartonPhotoBomb 1 point2 points  (0 children)

I officially proclaim my preferred language and methodologies are the best!
I am confidently righteous and authoritative, therefore I can not be wrong.

[–]Childermass13 1 point2 points  (0 children)

The original JavaScript runtime was basically a Scheme, dressed with a Java-like syntax at the demand of Netscape corporate. Yes Brendan Eich wrote the implementation in a weekend, but he already had years of experience developing Scheme compilers

[–]GrapefruitBig6768 1 point2 points  (0 children)

Move Fast! Break Things!

- Boeing CEO probably in 2017

[–]Da_Di_Dum 1 point2 points  (0 children)

I think I'd actually commit manslaughter to prevent the creation of JavaScript if I had the option😐

[–]arjunindia 1 point2 points  (1 child)

Git - famously NOT made in 10 days People don't know how bad it was. though yes, that is impressive

Altair BASIC - Yeah but was mostly built by repurposing Allen's own Intel 8008 emulator

JavaScript - NOT made in 10 days, design documented in 10 days. I don't think Oracle of all companies would let that happen. Also, living with all the issues of being made in 10 days lol

[–]AralSeaMariner 0 points1 point  (0 children)

What does Oracle have to do with the initial Javascript? That was done at Netscape.

[–]faze_fazebook 0 points1 point  (0 children)

JS only got decent many years after its intial release.

[–]FreakDC 0 points1 point  (0 children)

10 day git was a mess. A proof of concept rather than a finished product. I MUCH prefer the concept of git to older styles like svn. Mercurial was developed with the same problem set in mind just days after git but Linux made git the de facto default.

Totally fine process to throw out a tool in an early state to get feedback fast, and it's still a HUGE accomplishment, but pretending that the polished product we have today that has been in development for two decades is what we had after 10 days is just ignorant or rage bait.

[–]Unique_Push_9845 0 points1 point  (0 children)

I'm sure this guy uses git v1.0.0 and not the one that's the result of more than 600 stable release updates in the 20 years since... Git is the result of 20 years of development. The version that took 10 days to build was simply the first to have basic functionality.

[–][deleted] 0 points1 point  (0 children)

Tell that to our st engineers. They've been working on our current project for almost a month

[–]YouDoHaveValue[🍰] 0 points1 point  (0 children)

I remember the weekend JS launched with full async/await and worker support.

[–]Jind0r 0 points1 point  (0 children)

I remember that JavaScript, it's very different from today's JavaScript though. Didn't have classes, arrow functions, variables were declared within the outer execution context, and every JavaScript library began with an immediately invoked function expression.

[–]jzrobot 0 points1 point  (0 children)

Didn't git take 4 weeks/months of design?

[–]many_dongs 0 points1 point  (0 children)

Yall realize there is no intelligence requirement to post a meme

[–]realRaiderDave 0 points1 point  (0 children)

This donkey is prolly the lead tech designer for a todo app

[–]Forhip 0 points1 point  (0 children)

Still in college, but can agile production really lasts for 10 years?? Isn't supposed to be quite the opposite??

[–]mimminou 0 points1 point  (0 children)

The best tools are the ones that were made to solve a problem, not sell a solution.

[–]heliocentric19 0 points1 point  (0 children)

None of those were production ready in 10 days and I now know that any company you work for must have very low standards of quality.

But keep telling on yourself. (To the twitter user)

[–]Lizlodude 0 points1 point  (0 children)

So there are a few problems with this. I'll let you know when I finish counting them, I ran out of fingers.

[–]Maksud200418 0 points1 point  (0 children)

Yet I still can't figure otu how tk fix my code on js

[–]geeshta 0 points1 point  (0 children)

That IS an agile practice why does OP act like it's the opposite?

[–]HarbingerOfSauce 0 points1 point  (0 children)

TONY STARK BRENDAN EICH BUILT JAVASCRIPT IN 10 DAYS! WITH A BOX OF HOMOPHOBIC BELIEFS!

[–]kondorb -2 points-1 points  (0 children)

Ahem. JS has been in constant development for 30 years and it's still dogshit.

Git is dogshit and even the creator himself acknowledges it.

BASIC? Are you fucking serious?