Earlier quoted context omitted.
> Humanity is perfectly capable of building secure web services without having to keep the way it works a secret. That's the same as saying that humanity is capable of building a large system without bugs, in an economically viable way.
Just look at Linux. The only way to keep bugs out of the kernel is to keep the source closed.
Reddit 1.0 source code
101–110 of 117 posts
Re: Reddit 1.0 source code
#102Earlier quoted context omitted.
Enigma wasn't hard through obscurity. The Allies had the Enigma machine long before they were able to crack it. It was hard because with the equipment of the day, it was pretty much unbreakable in the same way that prime-number based cryptography is today. It was only A. Turing developing a completely novel kind of machine ( https://en.wikipedia.org/wiki/Bombe ) that enabled the decryption. In the same way that quant…
Don't forget about the Polish. They too broke the encryption before, but then they were invaded, and no precision machinery was available to increase the number of rotors to 10. https://en.m.wikipedia.org/wiki/Cryptanalysis_of_the_Enigma Turing did it too, independently.
Re: Reddit 1.0 source code
#103Earlier quoted context omitted.
I still don't get why non-code templating ever became popular. Especially that I saw it becoming popular in PHP , which itself is a better templating language than the templating languages people were using. Instead, people created plethora of languages that slowly accrued Turing-completeness with them, because religious adherence to "no code in views" is stupid. That said, glue-strings-together templates are still a…
>I still don't get why non-code templating ever became popular. Because if you're working on a team, not everyone on your team may be a programmer, particularly if they're just working on layout design, and the problem that templates solve in that regard don't require complete access to raw code. Separating one from the other makes it easy to focus on one versus the other. Just look at how messy a complex Wordpress t…
I think we're rapidly getting to the point in our civilisation that that's a bit like having an illiterate on the team. All programming is, is thinking logically & systematically about abstractions: everyone should be capable of thinking like a programmer — anyone who can't has a cognitive disability (like those poor folks who can't learn to read).
Fortunately, people who can't think logically & systematically about abstractions are pretty rare; people who won't think logically & systematically are sadly far, far too common.
Re: Reddit 1.0 source code
#104It's unfortunate that Reddit silently went closed-source before being forced to admit it. Certainly a betrayal of trust with their long-standing userbase.
Yup. I understand the scale and micro services thing, but they could at least keep the mobile clients open (even if with a lagged release for feature launches, or just periodic tarballs).
Re: Reddit 1.0 source code
#105Earlier quoted context omitted.
Making something closed source does not make your product more secure, it only makes it harder to look at. Determined people will still try to understand how your software works in order to accomplish their goals.
Security through obscurity is a valid and effective tactic -- it's simply ineffective on it's own .
Re: Reddit 1.0 source code
#106Earlier quoted context omitted.
> But what is the alternative? I mean, templates are a thing people use.
Can you explain what you mean, if it's not one of the things I mentioned (that are often called "templates") and how it doesn't have the drawbacks for a small team that I mentioned?
I think you implied that in your last point but I'd be curious to find a designer who knew lisp better than HTML.
Re: Reddit 1.0 source code
#107Earlier quoted context omitted.
Sure, sure. But while it's definitely not in the standard, I do see it all over, and it's something I picked up from reading a lot of other people's lisp. SBCL internals, for example. You might not like the convention and chose not to follow along with it, but I would be surprised if, after 18 years of lisp, you had never seen it before, and would choose to misspell an accessor to prevent a clash instead of naming it…
To be explicit, the old Lisp convention I know of, which is not a super common one but one I've definitely used quite a bit, is that you might name a slightly lower-level/more primitive version of a function with a %-prefix. So if we have a user-email function that is just an object slot accessor, We could have %user-email that actually does a database query. I can't remember for sure, but I wouldn't be surprised if…
That's why I linked to some CCL code (descendant of MCL).
I use foo-impl and such for the implementation of foo.
If I have a my-macro, which is implemented by an expander function, then I call that function expand-my-macro.
Re: Reddit 1.0 source code
#108Earlier quoted context omitted.
To reinforce your point, see all pre-modern crypto techniques. It cannot be argued that they worked, and they were all certainly security through obscurity.
Aren't most examples things where it didn't work? The most famous case is the German "Engima" device from WWII (hardware- and 'software'-based, but cracked and readable for years before the Germans knew because they believed it was both obscure and effective) but it's wholly possible that most schemes were broken eventually. Keeping an obscure system secret is really hard, especially against a motivated attacker.
Re: Reddit 1.0 source code
#109Earlier quoted context omitted.
Where's your flawless closed source SSL implementation?
Wow. Offended much? Did I say (or even imply) I had one? All I did was provide a counter to the claim that open source means more eyes which could make your software more secure.
You really didn't say much about open source and it's ability find bugs; you just cited a particularly nasty set of bugs on an open source project as a way to condemn all of open source work to being as bug-ridden as other methods.
It was more snark than it was providing a clean example as a counter-point. Someone could easily point out the millions of bugs in closed source projects as a counter to your point of equal caliber; but I think that it's clear to most of us that NO methods that we yet understand will result in bug-free code.
Re: Reddit 1.0 source code
#110Earlier quoted context omitted.
>I still don't get why non-code templating ever became popular. Because if you're working on a team, not everyone on your team may be a programmer, particularly if they're just working on layout design, and the problem that templates solve in that regard don't require complete access to raw code. Separating one from the other makes it easy to focus on one versus the other. Just look at how messy a complex Wordpress t…
> Because if you're working on a team, not everyone on your team may be a programmer I think we're rapidly getting to the point in our civilisation that that's a bit like having an illiterate on the team. All programming is, is thinking logically & systematically about abstractions: everyone should be capable of thinking like a programmer — anyone who can't has a cognitive disability (like those poor folks who can't…
But not every aspect of web development is programming, any more than every aspect of book publishing is typesetting, or every aspect of film is camerawork. It's a lot more complex than it was when you could be a "web developer" with just Notepad++ (unfortunately.)
And we're not talking about "thinking like a programmer" in this case, but literal programming. Someone whose job it is to translate a Photoshop image or PDF into HTML and CSS can be capable of thinking in abstractions but still not need to write python or PHP or what have you.