10 ms·
Open Source Society University – Path to a free self-taught education in CS
- selfselfgo 1y ago[dead]
- iamleppert 1y agoYou can definitely make the self-taught path work. I'm proof of that and have been working in industry for over 20 years. However, what I will say is the following: there are certain companies and roles which you will never be able to access. These are often times the best roles, best companies, have the most money, etc. A degree isn't just the time spent studying and knowledge -- you can do that part yourself. What's more valuable is the network and access to the alumni network of others who will hire you into their company just because you went to the same school as them. It's a big club and you won't be in it if you decide to self-study. That's the cold, hard truth. So what's left for someone self-taught with no degree? You are left with all the jobs the others don't want. You'll be flipping through the crazies, outright scams, poorly capitalized companies, or places that are already in a state of distress. VERY rarely you will find a real job that you can plan to stay at for any length of time. You WILL be paid less, and you're more likely to get taken advantage of. You will have a harder time getting multiple offers at once, because your overall demand is lower. So that erodes your position in the market and over time it will feel like you're on a completely different tract financially. You will need to work twice as hard, because finding a new job is much harder, even if you're good. You will constantly be doubted, by first yourself and imposter syndrome and next by those around you who have degrees. Make one mistake and the consequences are that much more dire. It's better than nothing, but if you have the opportunity to go to school (I didn't), do it over the self-taught route.
- Eikon 1y ago> It's a big club and you won't be in it if you decide to self-study. That's the cold, hard truth. This almost reads like conspiracy. There’s barely anything like that in reality, and the kind of network people finds at school is usually extremely weak. Otherwise, job boards wouldn’t exist.
- beej71 1y agoI think ones school network is what they make. Over my career I've gotten three jobs due to my school network. (It was a regular state university.) And I do think most people don't effectively leverage it.
- luckylion 1y agoBoth your points do absolutely not mirror my experience. In traditional career paths (established company) a diploma helps a lot -- for some roles you won't even be considered otherwise. And your take on networks being useless is also strange. I work closely with people who have large and well-maintained networks, and the value they produce because of that is insane.
- Eikon 1y ago> Both your points do absolutely not mirror my experience. In traditional career paths (established company) a diploma helps a lot -- for some roles you won't even be considered otherwise. For a first job? Maybe. I don’t have one and it’s barely been a talking point back when I interviewed, regardless of company size.
- IndubitableCoil 1y agoI highly dispute this. Networks in college are absolutely a thing and absolutely advantageous. In my experience, the network didn't come from just sitting in class, but from extracurricular competition engineering/cs teams. Competition teams certainly helped many people get their first jobs through friends referring each other or elevated exposure to employers. In fact, recruiters would often have separate hiring events for the competition teams and then have the standard college hiring event. There's also an intangible effect from being surrounded by other highly motivated and mission driven students that you gain in these environments. I am sure there is a way to get involved in similar teams outside of college, but a well situated college significantly lowers the barrier to joining these teams and almost creates a funnel for it should you choose to spend your spare time in such as team.
- 1y ago
- jsphweid 1y agoWhich companies are you talking about?
- thenthenthen 1y agoIn my experience over the past 5 years in EU and Asia: Increasingly many companies wont even talk to you unless you have ‘a’ PhD. You dont need this piece of paper, but it is one hell of a life hack getting one.
- cortesoft 1y agoAre you trying to apply cold? The way it usually works is that someone you have worked with before vouches for you and that gets you past that screening.
- thenthenthen 1y agoNever cold.
- no_degree_a102 1y agoAmerican Express, Capital One, and Canonical to name a few. Aside from Unicorn and FAANG orgs self-taught is still predominantly forbidden.
- AnimalMuppet 1y agoI'm self-taught. My first job I got lucky (or the grace of God, depending on your perspective). After that, it never mattered. I had experience, references, a track record. And the older you get, the longer the track record, and the more it outweighs the piece of paper. I'm primarily an embedded guy, though. If you're doing web apps, or desktop, or games, or phones, or high performance, or finance programming, your mileage may vary.
- no_degree_a102 1y ago
- electrolusty 1y agoI don’t mean to discount your personal experience, but I’m 100% self taught, and I’ve worked at some bougie megacorps, unicorns and startups of varying degrees of maturity. I’ve never felt like doors have been closed or that others doubt me because of my lack of education. I’ve interviewed at Google and Citadel, had an offer from Meta, etc. It doesn’t feel like anyone has denied me opportunities outright. I make north of $200k/year cash plus the equity and perks at an early stage startup. I’ve been through two exits so far. Nothing outrageous but I’m rich by most peoples standards. It doesn’t feel like lack of schooling has impacted me financially. I did start programming and doing the startup thing at 19, so maybe the early start was an advantage. I could just be mind numbing lucky. But, from my point of view, warning the up and coming youngin’s off the self taught path is a disservice.
- harrall 1y agoI know friends in a similar boat. Ultimately you can get very far if you are naturally talented technically and socially. But if you are normal like most of us, you are lacking in one or more areas and going to school (or attending conferences or maintaining a popular resource) can be one of those ways to shore up one of your “less natural” skills, but no step is strictly required and not everything works for everyone.
- coderatlarge 1y ago“The Federal Reserve Bank of New York released data on unemployment rates for recent college graduates (ages 22 to 27). The bank found that philosophy had an unemployment rate of 3.2%, less than computer science’s 6.1%, though computer science was more highly compensated.” https://www.entrepreneur.com/business-news/college-majors-with-the-lowest-unemployment-rates-report/491781 https://www.entrepreneur.com/business-news/college-majors-wi...
- whoopdedo 1y agoI expect there's some selection bias at play. If you're taking a philosophy major in college it's likely you already feel confident in your post-graduation career, so can study things that you like. Whereas if you're in a CS track it's because whether you get a job depends on getting a degree. The student studying philosophy is in school as an alternative to work. The STEM major is in school as a prerequisite to work.
- cultofmetatron 1y agoI'm somewhat sympathetic to this having been self taught myself. there was def a struggle in the beginning even getting low hanging jobs. It means you need to invest a lot of your off hours learning new stuff and getting ahead. a lot of university educated CS majors don't learn anything new after university and only put in just enough to do their job. being self taught means you need to be a lot more proactive about getting ahead of trends and being the guy on the frontlines where there isn't a whole lot of people that know a technology at all. I myself was lucky enough to jump on the javascript train before javascript ate the world. 8 years in I switched over to elixir because i saw in it the potential to be the best stack to build MVPs in. These days, I'm maintaining one of those projects as CTO and we are interviewing candidates for a position. I can tell you personally, I value what you did at your last job and your side projects more than what you did in university 10 years ago. The one issue as someone from the interviewing side is that it takes a lot of effort to actually do an interview properly. I spent a lot of time putting together a coding test to test specifically for the tasks you'd be workin on as well as doing it with our applicants to make sure they aren't using vibe coding to do a half assed job. Its worth it though to make sure we make the right hire. when you're a startup, every hire can potentially make or break the company.
- colechristensen 1y agoI don't have a degree and after the first few years no one cared at all from garage startups to the Fortune 100.
- doublerabbit 1y agoAs someone who did go the self-taught route, I wouldn't say it's the route to take if you enjoy depth via academic, I dropped out of university. I'm a practical person and learn as I do, I disagree OP, it sucks you got that end of the straw. I have had it just as good as others but you just need to put the extra effort in. Yes, you do get jobs not so good as the grand but you cash in those later. The route up is just more steep but in the end you end up more valuable experience and within 15 years time you then can cash it all in for a fortune 100 company. As that's where I am and I am only in my mid-thirties You should go to college however if university isn't your thing, don't feel like your forever going to be an entry grade tech. The route is more steep but it's all worth it; just keep seeking higher jobs with every departure.
- znpy 1y agoIf you worked in the industry for over 20 years and your network is weaker than a recent graduate, I wouldn’t blame it on the college, your networking game is just weak. As a college drop out, i have a few friends from university in the various big companies but none of my jobs came through them (even when i want to work in a faang: i just didn’t need it).
- devwastaken 1y agounless youre ivy league theres no more connecting. universities are completely irrelevant to tech in modern day. people are talking about their experiences 20 years ago. now, its just expensive adult daycare. remove federal student loans and grants and the market will finally correct.
- peterhadlaw 1y agoI've been personally involved in the hiring process of our startup and I give you my word the school you went to makes no difference. In fact one of my favorite coworkers that I had an honor to work with was self taught and had a philosophy degree. In fact I've seen big school degrees go straight to heads and egos and been actively an obstacle to those folks.
- tptacek 1y agoSelf taught, no degree, zero friction in the job market either early in my career (job offers on Wall Street and the startups I wanted to work with) or 25 years later; have done consulting work almost everywhere, and had offers from both big tech companies and unicorn startups. No investor has ever cared, either. The "you'll be stuck with all the jobs other people don't want" thing is risible.
- cortesoft 1y agoYeah, I am very confused by this persons experience. I have never once seen anyone utilize their school network, either to get a job or to bring someone on; every time we get a referral, it is for someone who they have worked with before, not who they went to school with. I have worked with people for YEARS before i even learned that they have or don’t have a CS degree. I have interviewed many dozens of people, both as a hiring manager and a peer, and we only look at schooling if they have zero professional experience. In my experience, a degree can help you get your first job, but after that it is all about your work experience and the connections with the people you have worked with.
- tptacek 1y agoAnd when thinking about that first job you have to remember that you're burning 3-4 years of full-time work experience on the degree. That's a lot of time to fumble around and find your fit!
- wglb 1y agoCommonly true, but in my five years of engineering school, in my summer after my freshman year, I was already employed in computer programming. The rest of my school had co-op periods during which I had summer stints in computer-programming-related jobs including at Bonneville Power Administration with a team working on computer monitoring of the system, with the idea that was to lead to control of that system; a stint as a co-op student at Wayerhauser Plup Bleach plant, working on a program to model the flow of pulp through a tower measuring the dose of chlorine-based bleach, working at a medical lab with odd jobs including generating a plot of a sensor measuring tremor in a patient's hand; working at an IBM sales office writing a program to measure the proper fill of a tanker truck based on the day's projected temperature, and finally as the first full-time employee of a company producing the first computer-based commercial electrocardiogram analysis service, all before graduation. My first job, of course, was prior to all that, driving various vehicles on my Dad's dryland wheat farm in northern Montana. So I feel that I was particularly lucky about finding good co-op positions, as many of my colleagues were at less interesting gigs at Motorolla, sorting resistors by color code. (Some of these are documented at https://ciex-software.com/ https://ciex-software.com/) Coming from a very small town, University was a bigger uptick than likely for kids growing up in the Big City.
- nomat 1y agonetworking is important for sure, but i think software more than most other industries (say, finance) has a much lower barrier of entry for an individual with no/low resources. a data point for your second paragraph: i play D&D weekly with a woman that got hired at google straight out of high school and worked there for 10 years.
- cortesoft 1y ago> What's more valuable is the network and access to the alumni network of others who will hire you into their company just because you went to the same school as them. This seems completely untrue in my 20 year career experience. I have hired dozens of people for both large and small companies, and networks do matter… but I have never once seen the network be from school. It is always about people you have worked with before. Even my coworkers with degrees don’t have contact with their schoolmates anymore, it is always people they worked with.
- brewdad 1y agoIt depends on the school and often aligns more closely with something like a fraternity. I have definitely known people who got their job through a frat brother’s recommendation or literally knowing the secret handshake.
- zamadatix 1y agoI found there is some truth to this but it was almost all in the beginning and/or if you expect to be in ~the bottom half of your peer group. After those criteria pass it comes down to your overall ability to network throughout life (not just from a college) and general chance/luck (which remains a larger factor than most would like to admit). What college can give you at the beginning of a career, beyond the premise of a guided education in the field of study, is a piece of paper that says "I really did learn some relevant stuff and have the ability to follow through" before you have a chance to prove these things in the field by already having had a job in it. It also gives you an initial chance to build a network but that's true of however you manage to spend your first 2-4 years getting into the field. After that initial in-field job or two the non-educational related value of a degree falls off a cliff (and the educational portion becomes an ever decreasing slice of job specific knowledge you acquire over decades). My anecdote (that's all it is) comes from starting out without a degree and then getting a degree for the fun of it over a decade later. It's provided 0 value in any job, they've all come from references or recommendations from people I've worked with previously at this point. It was fun though, a chance to get involved with topics you wouldn't normally have a reason to touch.
- yapyap 1y agoYeah what you said BUT there’s also big opportunities in networking I know people hate to hear it cause it sounds like a magic bullet and it does and I don’t like having to market myself either but it does work. You don’t even really need to have an alumni for networking, just a few relatively nice / ok projects, a website and some business cards and you’re off!
- rkagerer 1y agoI feel this take on it is a little over-dramatized. I empathize with the first part - connections are priceless when you're staring out - but in time you can and will build a reputation for your quality of work, interactions with (and then capability to manage) others, and achievement of results. All these can be developed at a no-name startup as well as at a FAANG. I went to university but only apply maybe 5% of what I learned there in my day job. I founded and grew a company, also worked in senior roles at others. When I interview for engineering positions, I'm much more interested in other factors than what school you went to or who you've brushed shoulders with. I recognize parent commenter's experience may be different, and give solid props for their self-taught journey. (In fact someone who can figure things out without having to be spoon fed is exactly the kind of person I want on the team).
- ghaff 1y agoI'd probably argue that most people don't have (personal) connections starting out. Maybe, if they didn't go to the right school or school at all, someone they know is the foot in the door. >but in time you can and will build a reputation for your quality of work, interactions with (and then capability to manage) others, and achievement of results. That IS their network for a lot of people. OK maybe there are smaller companies that are 50% $SCHOOL grads. And there are other companies that tend to bias towards a certain group of schools. But I actually think that going to, say, Harvard is a secret handshake is overstated in a lot of cases. I sort of suspect that my undergrad may have had something to do with a job at one point but the fact that I got in through a senior person who liked my work played a lot bigger role.
- cedws 1y agoI also wouldn’t disregard the experience of university itself. I went the self-taught route, left school at 16, built a career for myself to get to where I am now at 24, but I do have regrets. Going into working in an office basically terminated my youth right there and I haven’t had a social circle since. Not having debt is nice but if you can afford university both in terms of time and money, and come from a family you can fall back on, I’d say just go. Once you start work there’s no going back. You’re in the cold hard world.
- Scubabear68 1y agoI am most likely ADHD, probably in the spectrum to some degree. Tried college three times and dropped out every time due to expense, boredom, and personal issues like my father passing away from cancer when I was 21. I went into software development via tech support for a C compiler company, and worked up from there. Worked for the NY stock exchange, two top tier brokerages, several prominent Fintechs and ultimately consulting into banks and payments companies. It worked for me because I am largely an auto didact and do terribly in a school environment. The lack of degree came up only a few times, and no one has cared. At least in software development careers, degree matters very little to not at all.
- platevoltage 1y agoThank you for sharing, besides losing a family member at such a crucial age (which I'm sorry you had to go through), I feel like I'm in the same group here. I'm definitely on an upward trajectory, but have been a little worried that I'm approaching the glass ceiling.
- charlesrocket 1y agoSounds like a good way to separate oneself from a disgusting, greed-driven, and fake environment. Not to mention that for-profit education institutions have zero interest in your skill set—it's your money they want, not your success. I would probably enjoy studying CS in Norway, though.
- deleted 1y ago[deleted]
- throwaway314155 1y ago> What's more valuable is the network and access to the alumni network of others who will hire you into their company just because you went to the same school as them. It's a big club The size and value of this club of alums depends _entirely_ on where you went to school. Not everyone gets into MIT.
- sarchertech 1y agoI worked for several years as a software dev before I went back to school for my CS degree. I’m a much better developer after spending 3 years (already had 90 hours worth of a history degree) studying a prepared curriculum instead of bouncing around learning about whatever interested me. I think it’s possible to do that on your own but the vast majority of people will never come close. I’ve also definitely worked with self taught programmers who were better than me. But I’ve also noticed gaps they had and to a person I think they’d have been even better if they’d spent 4 years in a decent CS program.
- tayo42 1y ago> 4 years in a decent CS program Half of that is gen eds, another quarter is like math requirements. Then you have stuff like intro to python making up the CS part. Most of that time is wasted imo
- sarchertech 1y agoYou could AP or CLEP your way out of the majority of your general education classes if you're motivated. But ignoring that, a huge and often overlooked component of understanding is time. You need the entire 3 or 4 years even if technically you could cram all your CS classes into 2 (well you really couldn't because of dependencies). If you do it right, you'll have CS classes mixed in with your other classes, so that you'll pretty much always be studying CS over the entire 4 years. In a decent CS program, you'll also spend far more time on CS projects out of class than you will on homework in other classes. The average person will probably spend 75% of their total active time on CS classes. As far as intro classes go, there was maybe 1 class where I learned almost nothing and I had been programming professionally for a while before I went back. The whole point for me was to fill in the gaps of things I didn't know I didn't know.
- dahart 1y agoWhat school are you thinking of? I’ve never met someone whose CS degree consisted of intro to Python, and I’ve been interviewing people with CS degrees for a couple of decades. Mine included a year of introductory CS (basic algorithms and data structures) in Lisp, a year of advanced algorithms & data structures in C/C++, a year of OS’s and compilers in C++, a year of computer graphics, a year of hardware and CPU design, a year of theoretical CS, a year of software engineering (with a senior project), classes on discrete math, databases, networking, computer vision, and scientific visualization. I think I’m missing a bunch there too. The math & physics requirements were super useful to this day both in my CS career and in life, and the credit hours overlapped and counted for some of the gen eds, btw, which were maybe 25% of my time. The gen eds were also very useful and help shaped my thinking, I wish more programmers were into learning for learning’s sake and understood and cared about economics, government, history, art, music, etc. Strictly vocational / apprentice / work-experience education for CS would make the field generally worse not better IMO. I value my time spent in university. If none of that is convincing, just look up the average pay of people with and without degrees. Whether or not you enjoy learning and education or feel like the time is wasted, the sad fact is that the good jobs are being given to people with degrees, by and large. I honestly thought 4 year degrees probably gave, statistically, like maybe 15% pay advantage. That would be a pretty big boost, it’s already pushing 4 years of raises for most people. However, the reality published by The Fed is that people in the US with 4 year degrees earn twice what people without degrees earn. I was blown away when I learned that. It’s probably not fair, and it doesn’t mean people with degrees are smarter or harder working than people without, but that is the surprising reality of the job market.
- 1oooqooq 1y agothe network is bs. I've seen people add "list of top universities" retirement to positions just because they're from the list and like to justify it. candidate came from the regular channels, no network of any sort involved. it was more vetting good candidates because of some exec diploma buyers remorse. but in the end, your comment is perfectly correct, but not for the reason you thought.
- throwaway20174 1y agoThere is something that I find very often gets lost, not in this comment but in the general conversations. There are reasons to study CompSci that have nothing to do with trying to get a job, or make yourself a better worker. Namely, it's fun! You can be a lifetime student of it and can be very rewarding. Both the practical side (programming) and delving into the mathematical underpinnings (theory) and history of computation. News articles where people tell young people, "don't study computer science" don't get it.
- monkeyelite 1y ago> You are left with all the jobs the others don't want. I don’t think this is quite right. You may be left out of the very first choice jobs at the junior level, but it doesn’t mean you’re getting the bottom portion of jobs. I’m glad I went to school, I was on the fence. It improved my career, but i also know I could have found work my whole life without it. There’s a whole economy out there full of opportunity.
- efficient3823 1y ago> It's a big club and you won't be in it if you decide to self-study. That's the cold, hard truth. But what about the self-taught club? If it’s not already big, it’s definitely growing. Honestly, I can’t see how a Columbia graduate is more likely to get hired than a self-taught kid who’s had a few pull requests merged into something like the Linux kernel.
- theusus 1y agoA better alternative imo https://teachyourselfcs.com https://teachyourselfcs.com
- elpatokamo 1y agoI looked into this when I was trying to figure out how to round out my CS education. The lack of community is the primary reason I went with OSSU instead. Genuine question: why do you believe Teach Yourself CS is superior to OSSU especially in light of the community aspect? Full disclosure: I’m a “social organizer” for one of the cohorts in OSSU and blog OSSU sometimes
- theusus 1y agoSimple and to the point curriculum.
- zuzuleinen 1y agoI think https://csprimer.com/courses/ https://csprimer.com/courses/ is a good fit if you also want community. I think Oz Nova who is behind csprimer was one of the authors of teach yourselfcs
- elpatokamo 1y agoI’ve been looking closely at this too. $75/month isn’t bad all things considered. I’d love to hear more personal anecdotes from people who are active in CSPrimer. Downsides I could see (not having joined): - Some parts of CSPrimer are not finished yet. - How active is the community really? It’s hard to tell without joining and seeing for yourself. - How much access to Oz do you really get (same as above)? - How much mentorship do you really get (again same as above).
- theusus 1y agoHe is pretty active and holds regular Q&A sessions.
- 1y ago
- fzwang 1y agoI run a comp sci education program to help students self direct their education[1]. We sometimes reference the OSSU curriculum. Althought there are lots of benefits to the self-taught route, there are some caveats which students should be aware of. You will have to work harder on the "signaling" and networking. There are definitely social benefits in being associated with a university. And a lack of degree will mean you're "marked"[2], which you'll have to overcome. A setback or mistake will be attributed to your lack of degree, whether justified or not. And some hiring managers can't take the political risk of hiring a non-degreed candidate. Not insurmountable, but this means we work on it from day one. If you do decide to self-direct your education, the benefits are that you learn faster and don't waste time spining the hamster wheel, so to speak, to grind out courses. Everything you learn is in context and relevant. If you realize you miss some fundamentals, you'll just go back and learn those concepts/topics. It's a different way of learning, which imo, is inevitable for technical professions. But it's not for everyone, and some students just vibe with it more. What's sad is that many students are sort of forced into the self-taught route, because they don't have the financial resources to go to college/university. And if they're not aware of the trade-offs, they could really struggle. [1] https://www.divepod.to https://www.divepod.to [2] https://en.wikipedia.org/wiki/Markedness https://en.wikipedia.org/wiki/Markedness
- Aurornis 1y agoI’ve followed and part-time mentored several people through their self-taught education. There are a lot of pitfalls and traps that can send people down the wrong path if they’re not careful. One that I did not expect but that seems obvious in retrospect: It’s really easy to start reading Reddit or watching Twitch streams of developers ranting about the industry and think that actual skills don’t matter any more. There’s a temptation to think that you’re a fool to study and practice the job skills because what you really need to do is optimize for interview skills. So they drop everything and starting grinding LeetCode, putting unfinished “side projects” on their GitHub that have all the right things in the README.md (just hope nobody actually looks at the code) and memorizing S.T.A.R. format responses for the common behavioral interview questions. This strategy actually worked reasonable well for a few years, but the game has changed and most companies are better at catching professional interviewers who don’t know how to do much else. I should note that this mindset isn’t unique to self-taught people: There’s a parallel epidemic of cheating in college among students who see it as “just a piece of paper” and think they’d be foolish to actually learn the subject material. This also hits hard when they reach graduation and are faced with the current style of interviews which are not as easy as they expected to bluff your way through.
- mmooss 1y agoDon't try to be entirely self-taught. Everyone needs guidance and feedback from experts in the domain; otherwise you are certain to misunderstand things, have large blind spots (truly blind; you'll be unaware of them), not understand how things apply in real situations, and have no exposure to the latest knowledge. It doesn't have to be via college; there is apprenticeship, even if usually unofficial in IT, at many jobs. (College can be fantastic in many ways if you have the opportunity - don't let the reactionary politics ruin your life-changing opportunity - especially if you are intellectually curious.) Also, be very choosy about who you learn from; I'd be much more choosy about that then about what you learn, or even where I work or the job I do - do anything to work with and learn from the best people. The range of knoweldge and skill in the real world is almost impossible to conceive of, and a lot of it is so much BS. If you learn from C-level people, you will have C-level knowledge and skills and never know better until you meet someone who is B-level or A-level - there are entire organization and towns of C-level people. One big advantage of going to someplace like the Bay Area is the community of highly-skilled people, many on a level you are unlikely to meet in most other places, and being exposed to the newest ideas. Just being there can raise your game, if you take advantage of it.
- ModernMech 1y agoAwesome collection of resources! Although: After completing the requirements of the curriculum above, you will have completed the equivalent of a full bachelor's degree in Computer Science. Congratulations! Is not strictly true. I've been part of CS program accreditation, for example: https://www.abet.org/accreditation/accreditation-criteria/criteria-for-accrediting-computing-programs-2025-2026/ https://www.abet.org/accreditation/accreditation-criteria/cr... The program outcomes for a CS degree accredited by ABET is: Graduates of the program will have an ability to: 1. Analyze a complex computing problem and apply principles of computing and other relevant disciplines to identify solutions. 2. Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline. 3. Communicate effectively in a variety of professional contexts. 4. Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles. 5. Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline. Really, this list of resources only speak to #1 and #2. A little bit of #4, but it seems to be an afterthought in the list of resources. However, self-study is not going to get you #3 and #5 at all. Typically in order to fulfill these requirements, the curriculum would include much more than just the technical topics listed. Indeed, OSSU says that included courses must "Match the curricular standards of the CS 2013: Curriculum Guidelines for Undergraduate Degree Programs in Computer Science" I'm familiar with this document. It includes this: The education that undergraduates in computer science receive must adequately prepare them for the workforce in a more holistic way than simply conveying technical facts. Indeed, soft skills (such as teamwork, verbal and written communication, time management, problem solving, and flexibility) and personal attributes (such as risk tolerance, collegiality, patience, work ethic, identification of opportunity, sense of social responsibility, and appreciation for diversity) play a critical role in the workplace. Successfully applying technical knowledge in practice often requires an ability to tolerate ambiguity and to negotiate and work well with others from different backgrounds and disciplines. These overarching considerations are important for promoting successful professional practice in a variety of career paths. The reason I'm saying this is because often times, an undergraduate I'm advising will come into my office with a schedule of 12-15 credits of tech/math/science. They will explain to me "I only want to take technical courses, I don't see the purpose of taking courses in English or History, they are a waste of time." And I get that, I felt that way in school too. I thought those courses were preventing me from learning CS, but it was only after I left school when I realized all those "soft" courses I had taken actually prepared me to face the challenges I would in CS. So I will continue to watch this resource, because I love a good compendium. But I would say they should not say what they provide is "equivalent of a full bachelor's degree in Computer Science" because even the standards they say they are trying to meet indicate they fall short.
- aardvark179 1y agoSo several people in this thread have talked about academia giving you a network, and getting jobs via that, but have also conflated that with companies only hiring from particular schools. The network of contacts you make through university and your careers is a mechanism by which you hear about jobs you might otherwise never get the chance to apply for. That’s a very real thing, but will tend to be dominated by contacts you make after university as your career progresses. The other thing of needed a degree from a particular university, or a PhD, isn’t so much about a network as that degree being a shibboleth. The person reading your job application sees that and knows there are questions they don’t need to ask. These are both things you can, and may need to, work around if you go down the self taught route. Depending on the work you want to do you may need to make sure you do work which either you can point to or other people will see so that you hear about those jobs, or get a referral to avoid the normal job requirements.
- tomnipotent 1y ago> you might otherwise never get the chance to apply for It kind of reminds me of the whole "luck is not a strategy, but increasing your number of attempts is". Having a network increases the number of chances you have to get lucky. I have a friend that joined a work softball league, and that network eventually led him to a role with another company participating in the league.
- fHr 1y agoAh yes more people in CS are needed, let me check that chart with the most % of jobless people out of all fresh grad majors, cs is almost leading now.
- trklausss 1y agoWhat I’m missing is some math like differential equations (both ordinary and partial). Does anyone have a good (and free) resource on that?
- AnimalMuppet 1y agoWould you settle for low cost instead of free? Western Governors University I believe has such courses.
- trklausss 1y agoA this point yeah. It's a hole I have in my formation as an engineer, that I wan to cover (both analytical and numeric solutions). I managed to learn the basics, but generic differentials scare me still.
- sn9 1y agoMIT OCW Scholar.
- ghaff 1y agoEarly DiffEQ is pretty cookbook. OCW or, without looking it up, various MOOCs out there (though full resources are often not free these days) would probably work. It is useful for some areas like system dynamics.
- waciuma 1y agoIf you're an experienced engineer that wants to give back to learners, OSSU is a great place to do so. This can look like: - Setting a regular time that you'll pair (or mob!) program on a side project of your own with OSSU learners. - Developing familiarity with one or more courses in the curriculum and responding to students who have questions or are stuck. - Attending weekly check-in meetings, sharing what you are working on and listening to what learners are working on. To do so - Visit our Discord server: https://discord.gg/wuytwK5s9h https://discord.gg/wuytwK5s9h - And ping me @waciuma or the @tutor role I'm one of the leaders of OSSU and we agree that community, networking, and projects are part of a complete education. That's why we celebrate not only the professors and universities creating free courses, but also the many engineers and practitioners that have volunteered with OSSU learners over the years. I hope some of you will join that group!
- dokyun 1y ago[flagged]
- hackable_sand 1y agoDiscord is very accessible and convenient for learners to just hop in and ask questions.
- dijit 1y agoSure, I suppose that is similar to how facebook is convenient for organising events. It might be considered somewhat ironic though that a curriculum with “open source” in the name would use something that is considered very non-open. Like the EFF organising their next meet in a facebook event. I understand the parents incredulousness.
- johnisgood 1y agoI understand, too, and "Like the EFF organising their next meet in a facebook event." is a really good way to put it, but then again, were it not for Discord, it might not have a thriving community (assuming it currently has).
- epolanski 1y agoNot gonna lie, the amount of defensiveness people have in these threads, both camps, is a bit sad.
- AstroBen 1y agoI wonder how much the 'free and open source' requirements of this curriculum hold it back. Someone serious about self learning shouldn't be hesitant to invest some money in good material
- elpatokamo 1y agoThis is fair. One example is the discrete math course (called Math for CS). The MIT course is widely agreed (in the Discord server anyway) to be harder to follow than even just a good discrete math textbook, but there are no high quality discrete math textbooks that are free and open source (as least that I know of). I’m doing OSSU, and I went for “Discrete Mathematics with Applications” by Susanna Epps. Cost $50 for a used textbook. Technically I’m deviating from the curriculum but I’d say I’m still “doing OSSU”
- AstroBen 1y agoAnd you can even resell the textbook after using it :)
- Havoc 1y agoTo what end? Surely a community college level education is more conducive to getting a job. And if aim is to make money I'd probably attempt something closer to neal.fun or levels.io not this. If you're not getting the piece of paper then you maybe as well yolo it What does that leave? Straight interest only learning for the sake of it?
- elpatokamo 1y agoI was immature right out of high school and fumbled a really good opportunity to finish a degree in computer science. After getting married and having kids I later went back and quickly finished a degree in IT, but CS was always my first love. A couple years ago I found myself in a place where I would really benefit from finishing my CS education. I put a lot of thought into getting a true second BS degree, a post-bacc, bootcamps, etc but eventually settled on OSSU. It’s taken me longer to get through it than I wanted (life happens) but I have nothing but positive things to say about the curriculum so far and about how it’s affected my career and honestly my own happiness. I blog about it occasionally. This is the first one and explains why I chose OSSU over the other options available to me: https://dustinbriles.com/ossu-blog-1/ https://dustinbriles.com/ossu-blog-1/
- deleted 1y ago[deleted]
- yokuze 1y agoIt’s worth making this very clear for learners: A Computer Science education is **not** the thing that will prepare you to work and make money in many real-world _jobs_. Some? Yes. Many? No. This blurb from one of the course pages (unintentionally) says it well: > Because the point of computer science isn't to teach you a language. Or to teach you to code. Or to teach you to be a fullstack software engineer. Computer Science is a very narrowly-applied applied math with wide-ranging practical usage. But if you strip away all the qualifying language, it's math. Which means it has certain overarching rules that are completely, totally independent of your implementation language. In short: the point of Computer Science courses is not to teach you to do the thing that you will be doing when employed at the company that pays you. Another: > if you want to read white papers you're going to want to read Lisp Most jobs are not about reading or writing white papers. Almost all Computer Science courses are an _academic_ pursuit, not a practical one, and are taught as such. If your goal is to _work_ in the industry, this is _a_ path, but it is a very inefficient one. Depending on what work you are happy with, 80%+ of the content here will not contribute to your success. Will learning the things taught in these courses exercise your problem-solving and other mental abilities? Yes. Will they teach you broadly-applicable principles that you could apply to your work? Hard _maybe_, depending on their teaching and on how well you learn and generalize. In any case, you may well end up doing work that utilizes little of this. If you want to work in research, a math-or-fundamental-sciences-heavy field, or with teams of folks creating new programming languages or database engines for example, then certainly some of these courses (and more) are required. But it’s worth warning potential learners that a full Computer Science education is _neither an efficient nor a necessary path to a job in the field_. What is? One example: There is much available and satisfying work in building user-facing applications like web and mobile apps. If your goal is to do that kind of work, then it’s best to relentlessly focus on the things that you will actually be doing at your job: Building things. Broadly speaking, employers pay you using the money that they are making (or hope to make) by solving problems and/or providing services using software/applications that you will help write. So practice writing it. Learn to build real things: Mobile, web, or desktop apps that do a thing that _you_ would want to pay for. Find courses that teach that. Practice it. Hit a wall, research and figure out how to overcome it. Repeat. Submit PR’s to open source projects, especially ones where experienced maintainers review your code. Learn from that feedback. Read their code and understand how it comes together to create the app you are using. Have LLM’s review your code, even, if no skilled human is available. Practice working with other people. Learn how to write and communicate clearly and unambiguously. Find and fix bugs in open-source codebases. Embrace that working in the field means a commitment to non-stop, career-long learning. Later, after you’ve freed up mental space by mastering the basic mechanics of programming, begin researching and applying the techniques and methods for writing code that other people find pleasant to read, interact with, and modify/extend. Build something that you can show to prospective employers. You will also learn many more things from the people you work with. Many of the hard skills you will learn through doing _these_ things will directly transfer to the work you do, because _it is the work you will do._
- saffsffefewafew 1y ago[dead]
- globalnode 1y agoMaybe getting a degree counters any social shortcomings for most people, its a piece of paper that will get your foot in the door so to speak. It says "I've spent 3-4 years working on this area, have at least half a brain and am committed". So even if you can't speak very well to people (yet) you still have something going for you. If you're self taught, you don't have any of that so you've gotta be pretty good socially and at networking, or just really really lucky. I think being good socially breaks all the rules honestly and is like a superpower, you could probably talk your way into most things with little in the way of real skills.
- ArthurStacks 1y agoAnd within 24 months will have been a total waste of anyones time doing it
- terrycody 1y agoLet's focus on talking about the self-taught resources please, don't talk about other off topics, not everyone learning to find a good job on big companies, the reality is, when a man/woman want to self studying CS, he/she age is already not a fit for those companies. We want to learn even after the right age, just because we love the computer.
- d3admorozz 1y agoInteresting stuff
- sulikns 1y agoI'm 37 and live in one of those lesser-known countries whose diplomas likely don’t hold much weight elsewhere—but that’s not the point. I’ve decided to change my profession. After many trials and errors, I studied Python. I wrote some scripts and bots, but I kept feeling like something was missing—I didn’t really understand programming. Then I discovered OSSU and, after reviewing their curriculum, I realized just how little I actually knew about computer science. I started over from scratch, even relearning math. Because of the language barrier (yes, I learned English by forcing myself to study in English), my conversational skills are still shaky, and this text was polished with the help of GPT. I’m not thinking about a job just yet. My current goal is to get a solid academic education, and I believe OSSU is one of the best initiatives ever created—accessible to the entire world. It's not just about being free. Maybe the best universities are in the U.S., but compared to what's available in my country, the OSSU curriculum is several levels higher in both quality and structure. As for work, I plan to contribute to the open-source world, hoping to make the world a better place, just like the creators of OSSU did. Education should be accessible to everyone—not just a privileged few.
- JFingleton 1y agoReally inspiring thankyou. Although I've not used it, I've heard good things about Khan Academy... Which is aimed at kids/teenagers but would cover any core principles you might be missing: https://www.khanacademy.org/computing https://www.khanacademy.org/computing
- sulikns 1y agoYeah, I studied with Khan Academy too, and my kids are learning with Khan as well. But unfortunately, it doesn't go deep into core principles. There are better resources for Algebra, Geometry and Precalculus, like Professor Leonard, OpenStax, and The College Preparatory School, which is listed in the OSSU prerequisites for Computer Science.
- kadushka 1y agoCoursera and Udacity have been around for a long time. Not to mention countless youtube lecture courses on any imaginable subject.
- pawanjswal 1y agoIt's an ultimate roadmap for self-taught CS students!
- dragochat 1y agoBut... are there _any_ good resources for _networking_ / _integration_ for self-thought cs ppl? This is the missing elefant in the room imho. With AI automating lower-level upwork/fiver/freelancer jobs, good luck getting started in an actual career.
- deleted 1y ago[deleted]
- fedeb95 1y agoThis is very interesting. It is great also as a reference for those that already now some CS. Ideally none should reside on youtube, given it is named "Open Source", but I get that a lot of resources reside there.
- Quenby 1y ago[dead]
- astrodude 1y agois there a similar repo for machine learning/AI?
- lamer3 1y agoNot exactly but there is a data science version: https://github.com/ossu/data-science https://github.com/ossu/data-science
- jbverschoor 1y agoSaylor (Michael saylor) has saylor academy. It’s a feee resource, and you can get academic credits if you do the exams. The information is very dense, but goes into more detail dan your average CS degree. Quite low level and tricky questions Not as accessible. Just a whole bunch of text. Kind of old school, but at least it’s out there
- Yizahi 1y agoOf course it is dense, after all it is the hardest type of education ever known to humans. A store of knowledge if you will. You can become a cyber hornet after investing into all that hardest knowledge!
- akshitgaur2005 1y agoI am a college student, about to begin my 3/4 year of the course. Most of the things about networking and all don't apply to me, because although my Uni is one of the best in the country, it is mostly focused on humanities and the CS school (or any engineering school) is quite new with only batch of graduates till now. I am certainly no novice, easily one of the top 10 in my school and definitely top 2 in my year, though that does not mean much here. So my question is should I focus more on projects now, or do OSSU instead, or try to do both? https://drive.google.com/file/d/1RoHHwBbZfRE-LdC7Ow3sQvX73c5JtiiP/view?usp=sharing https://drive.google.com/file/d/1RoHHwBbZfRE-LdC7Ow3sQvX73c5...
- fsfsa3 1y ago[dead]
- oleks 1y agoAs an avid designer of CS courses and curricula in the not-so-distant past, I would like for it turn into a success criterion that your course gets included in this listing. Back when I was involved in designing the BSc education at the University of Copenhagen, I remember referring the committee to the ACM/IEEE-CS/AAAI Computer Science Curricula. Great to see that there has been an update to these recently, complete with a Generative AI section and all :-)
- jbirer 1y agoShout out to Stanford that made it possible to start a CS education for free, for a Romanian kid who could not afford it (me). The free video course they have had up there since about 20 years was one of the foundations of my programming career now.
- deleted 1y ago[deleted]
- lamer3 1y agoIf you do not have that much time, IMHO teachyourselfcs.com is better
- deleted 1y ago[deleted]
- deleted 1y ago[deleted]
- deleted 1y ago[deleted]
- deleted 1y ago[deleted]
- MeruMeru 1y ago[dead]
- warmersun 1y ago[dead]
- ungreased0675 1y agoOne of the problems with not having a college degree is that companies won’t even look at your resume. It gets filtered out before a human even looks at the candidates.