Earlier quoted context omitted.
That's why professional programmers should get a B.S. in CS and then an M.S. in software engineering (or a few years of internship experience such as that required for licensed architects). Unfortunately, this is one of those things you can't say because it increases the opportunity cost of a programming career.
Or a professional programmer could just get a job and learn software engineering that way.
Security Lessons Learned From The Diaspora Launch
111–120 of 142 posts
Re: Security Lessons Learned From The Diaspora Launch
#112I don't think this is that big of a deal. Pretty much every developer I know has learned about security through this exact process. Either a senior developer or user exposes the flaw and smart, but new, developers quickly realize the didn't understand the attack angles. Without concrete experience it's pretty hard to appreciate how exactly these attacks work. But after a few exploits you start getting paranoid, under…
Why would the community of experienced developers who are supposedly expected to be interested in working on this project, find it rewarding to sit around and wait for them to work through their training wheels? This whole situation really is absurd.
Re: Security Lessons Learned From The Diaspora Launch
#113Re: Security Lessons Learned From The Diaspora Launch
#114Earlier quoted context omitted.
> That was 11 years ago. The problem is, these kids are from college . They don't teach you stuff like "writing a secure web application" in college, or even try to. (Not that this is unreasonable, though perhaps I'm suggesting that there should be different career paths for CS majors and people who intend to be professional programmers. (I say as a CS-educated professional programmer))
I disagree, this should be an obvious security capacity: Don't let people who are not permissioned to modify a given resource modify a given resource. I might be able to excuse this since they're fundamentally still in alpha (or pre-alpha) and were rushing to get code out.
I wouldn't. Authorization is the sort of thing that has to be done first.
Re: Security Lessons Learned From The Diaspora Launch
#115Re: Security Lessons Learned From The Diaspora Launch
#116Earlier quoted context omitted.
I've always thought it would make more sense for CS degrees to be for computer scientists (ie, people who want to do more high-level theoretical work), and that software development was more of a trade school, where you learned the languages, and were soon thrown into real-world style projects and apprenticeships. Imagine if your nurse came out of college having never stepped foot into a hospital, having only read ab…
I agree with the sentiment, but it's important to note that excellent programming requires some pretty high level theoretical understanding of Computer Science (i.e. Algorithms). There's a slow way to do everything and a fast way to do some things; programmers need to understand the theory behind this. In addition, if you're trying to teach someone how to write secure code, they're going to need at least some underst…
Re: Security Lessons Learned From The Diaspora Launch
#117Earlier quoted context omitted.
Or a professional programmer could just get a job and learn software engineering that way.
...by getting scolded by more senior programmers for playing amateur hour and allowing authenticated, unauthorized actions?
Re: Security Lessons Learned From The Diaspora Launch
#118"NoSQL Doesn’t Mean No SQL Injection" I lol'd. Mind if I use that? MongoDB is harder to secure and filter because you have all of Javascript to worry about, rather than just SQL (and where most servers can escape arguments themselves through prepared statements etc.). SQL databases are also well understood (for eg. in MS-SQL I can stop the remainder of the statement from executing with '--'). MongoDB with its JS engi…
Re: Security Lessons Learned From The Diaspora Launch
#119Lesson learned: Never let the outside world see your First Big Project Ever. This is what Fred Brooks would have called the First System. Everybody builds this thing at the beginning of their career, and it's always this embarrassing. Mine, in 1996, took this a step further and actually prepared SQL statements in javascript before submitting them to the server to run. Yours probably did something equally bad. It's th…
Yes, but Fred Brooks also warned that the Second System would be even worse!