Leave these fields empty (spam trap):
You can leave this blank to post anonymously, or you can create a Tripcode by using the format Name#Password
[i]Italic Text[/i]
[b]Bold Text[/b]
[spoiler]Spoiler Text[/spoiler]
>Highlight/Quote Text
[pre]Preformatted & Monospace Text[/pre]
[super]Superset Text[/super]
[sub]Subset Text[/sub]
1. Numbered lists become ordered lists
* Bulleted lists become unordered lists


A ridiculous sequence of courses

- Sun, 04 Jun 2017 02:38:16 EST HC1vVHLz No.37033
File: 1496558296564.jpg -(18091B / 17.67KB, 480x360) Thumbnail displayed, click image for full size. A ridiculous sequence of courses
Hello, I made and actually did all this (including the 'grad level' research electives, except for the coding theory book)

It's easier than it looks, it took me 3 years to do that. I did it about 3-4 hrs a day at first but then everything kind of snowballed and I finished it with only 1hr a day after the first year. These days I'm finishing The Art of Computer Programming series, I'm done up to book 4A and doing 4B draft at the same time. I just do it 20-30mins a day.

I cannot shill TAOCP enough, it totally changed me from amateur to professional computer scientist by just doing hundreds and hundreds of exercises. 20mins a day, for one year, it's all you need for the first book. Anyway, pick and choose what you want from this list and enjoy

I make money from cloning shopify apps, and I work P/T on https://turtle.ai/ though much more infrequently these days. I started out shilling myself on elance (now "upwork") as a jr developer and literally taking jobs from 3rd world countries for less than I would spend on lunch. I also work 2 days a week at my local university doing "ML" (statistics) for a cancer research lab making peanuts but it's research, and fun to do, and I don't need the money. The book in that above link, "Parallel and Sequential Algorithms" was directly responsible for the lab hiring me. Anyway anons I'm here to tell you to try this have a good day.
George Brublingway - Thu, 06 Jul 2017 09:14:17 EST d05k9PWy No.37101 Reply
l can't comment on the actual classes, but the quote about Newton reminded me of The Ignorant Schoolmaster by Jacques Rancière. I think you would like it.
Thomas Buzzbanks - Thu, 06 Jul 2017 23:34:46 EST g2PdyrbM No.37102 Reply
Anon, where do you frequent? I've been trying to hunt you down from 8ch /prog/.
Augustus Murdspear - Sat, 08 Jul 2017 13:25:09 EST H7cDawaz No.37107 Reply
If you did it in three, I imagine it could be done it two if one maintained 4-5 hours daily? I'm at Valenza's Abstract Algebra book right now and it's difficult but ez at the same time. Love The Little Schemer/MLer. Anyway, thank you for creating it OP.
Charles Crickleman - Mon, 10 Jul 2017 20:29:55 EST Ay6PEFuC No.37109 Reply
What do you mean code schools? Like programming boot camps? Most of those are legit, but you only get out what you put in and they're more about tools and concepts (e.g. for front/back end web development) than the basic skills that you need to be a decent programmer.
Graham Himmerham - Tue, 11 Jul 2017 14:10:19 EST MNLHjix1 No.37110 Reply
Okay, could you recommend any?
Anything to look out for?
Polly Boddlelock - Wed, 19 Jul 2017 00:15:00 EST 9plGIS8Y No.37114 Reply
Thanks for the curricula brah. Currently learning about learning. Real interesting stuff. I'm already a fast learner but maybe knowing how it works will help me git gud faster.
Lydia Buzzcocke - Wed, 19 Jul 2017 14:42:05 EST hh4uYXvR No.37116 Reply
Thanks for the link, I could use a touch-up on specifically my math (esp. algrebra) and problem solving skills...

Lots of great reading in there. "Parallel and Sequential Algorithms" is really interesting

That's my summer vacation covered :-D
Archie Fongerlodging - Thu, 20 Jul 2017 22:30:07 EST eZVREo4y No.37120 Reply
Anon quit being a fag and mentor me on making money in crypto
Shitting Chuzzledock - Mon, 14 Aug 2017 17:30:31 EST MNLHjix1 No.37156 Reply
Simeltaneously doing the "How to learn" Course paired with the introductory Programming Course. I gave the "How to learn" course a 2 week head start.

What I like about it so far
  1. I already know a lot about anatomy, physiology and how the brain functions
  2. I already habitiually do 30 min-1 hour habits on a daily basis (DuoLingo, Guitar, puzzles, reading...) so this is easy to adopt.

Wish me luck, as I delve into this new frontier of CS
Phyllis Blythegold - Tue, 19 Sep 2017 23:42:40 EST eZVREo4y No.37194 Reply
this was posted on my birthday

anyway, do you have a blog I could follow anywhere anon? all your recommendatiosn are always solid
Ernest Sumblewell - Wed, 27 Sep 2017 12:57:04 EST M+uLLNpk No.37195 Reply

How do you know their recommendations? How do you know that this is the same person that wrote whatever else you are thinking of?
Jack Dartcocke - Fri, 06 Oct 2017 00:37:16 EST eZVREo4y No.37209 Reply
I've stalked this guy to no end, I know his writing style at minimum. Regardless, if someone fooled me, I wouldn't mind following another anons stellar blog and recommendations.
Archie Bridgekut - Sat, 07 Oct 2017 09:24:59 EST h1AD0QpE No.37210 Reply
is this shit actually worthwhile doing till the end? I really want to become better, and I would spend the time, I'm just asking if the curriculum is decent
Walter Hummlebad - Fri, 13 Oct 2017 21:26:35 EST BBXKtFPn No.37219 Reply
The curriculum is decent, but probably not worthwhile unless you're pursuing a degree. If you're looking to be a programmer with the working knowledge of a typical CS graduate, this is not how you do that.
Lillian Follyhone - Fri, 20 Oct 2017 18:24:30 EST qXcTInin No.37220 Reply
I got into a top 30 school in the US and I'm going for computer programming. I'm probably going no matter what, but I'd still like your opinions as to if this is a good idea or not.
Beatrice Mimbledatch - Thu, 26 Oct 2017 12:59:37 EST VU0UgEAS No.37224 Reply
Can you go into more detail regarding how this won't provide you with typical ccs graduate knowledge? Where are the differences?
Beatrice Mimbledatch - Thu, 26 Oct 2017 13:01:23 EST VU0UgEAS No.37225 Reply
hey opcan you repost that online linear algebra resrouces? I see you edited on the 24th and that really rustles my goddam jimmies man
David Dingerhall - Fri, 27 Oct 2017 16:27:58 EST FXkQatto No.37228 Reply
nvm found it, just pls don't delete your github history. Bookmarking what I can, but I don't want to lose anything
Alice Blundersine - Sat, 11 Nov 2017 22:16:46 EST oPY6s1zJ No.37231 Reply
OP will u fukn respond u jolly african-american

make a similar curriculum but for math, pls.
Sophie Dungerwadging - Thu, 23 Nov 2017 03:37:00 EST x6K3CZQk No.37240 Reply
This thread persists!

I'm pretty much terrible at math compared to the people at the lab I work with. Here I give the advice https://functionalcs.github.io/curriculum/#sec-2-4 the best way to learn math is to just find a paper or a book you want to understand and start doing it, looking up things you don't understand as you go along. Then as you progress through the exercises eventually you will just get it, well get it enough so you can use it correctly in an applied way. I did this when I first learned asymptotic representations such as big-oh/theta/ and big omega for lower bounds. It required a background in basic single variable calculus which I didn't have, so I picked up a calculus book and read it until I could follow the text on O(f(n)) approximation and until I could finally use Euler's summation formula to approximate finite sums. This led to learning about integrations, Bernoulli numbers/polynomials, derivatives, limits, all elementary calculus. I was terrible at proofs as well until I read VanDrunen's book on Functional Programming w/discrete mathematics which put it all together for me. Before that I was terrible at induction until I read Knuth's chapter on it despite working on numerous exercises and books on proofs before I came across Knuth's books. I guess you should just jump in and try the Mathematical Preliminaries chapters in The Art of Computer Programming, Vol I 'Fundamental Algorithms'. You can use libgen to get a pdf or buy a used copy anywhere, then when Knuth does some magic you don't understand with the notation summing a pile of subscripts and negative exponents or deriving rules from bracket notation look up directly that material in some elementary text (Knuth also tells you often where more information can be found, often referring T. Apostol or Hardy books by page number and volume). For elementary texts I used "What is Mathematics" by Courant and Robbins and Axler textbooks, since Axler works through every second problem and shows you the complete solutions instead of just providing an answer. I also asked a lot of stack exchange questions and shit posted my elementary problems on /sci/.

There's a bunch of things I should add to this, like lectures I have found by Andrew Appel. If you are unmotivated like me and it's a task to go through this material, what I do now is pick a project, and then I've become a researcher instead of a passive student. Since I want to finish this project it's no longer a tiresome task to slog through hours of lectures instead I'm now focused on exactly what I want to learn so tearing through lectures and papers is much easier for me now then when I started this. Pick what you want to build and then use the curriculum as your research material, or to help understand recent papers you've grabbed off of Google Scholar for your SQL prover or AI coin exchange bot or w/e. Whatever you want to build or problem you want to solve right now, immediately begin to build it and research as you go. I spent an entire night once going through chapters in a networking theory book looking for ideas how my crazy abstraction could work for a program I was building without losing interest once, in fact I glanced at my phone and saw it was 4am and I had been sitting for almost 4 hours without a break engrossed in the material. No way would I have ever done that otherwise.

The point of this list was I wanted to find rigorous material to help with understanding the latest research papers in computer science, in particular complexity theory and type theory which is hard to find, there's a lot of MOOCs but they are not all that rigorous and focused towards business, I wanted academic. It's public since I found myself cut and pasting the list around so much to coworkers and friends I decided to just keep an org-mode curated list online for other people to take advantage of the material I managed to dig up. You can be a working programmer no problem though if you do any of those CMU courses, or just be a working test writer. Once I killed it on elance just doing other people's exams/homework for SQLite/Postegres at $50 a pop making $350 a day for only 2 hrs work. You can learn this yourself here: https://www.youtube.com/playlist?list=PLSE8ODhjZXjYutVzTeAds8xUt1rcmyT7x I still do it once in a while if I'm home with the flu and not working in the lab I'll go on elance and smash some discrete math homework jobs during breakfast so I can gamble the profits away speculating on whatever alt-coin for fun, the demise of BTC-e the world's shadiest exchange killed my previous pastime in arbitrage and writing trading bots, and everybody else wants piles of ID/passport images sadly. Somebody here should finish the list, go intern at Janes Street fintech and write a cowboy exchange for me to raid with my arbitrage bots I don't have the time anymore.
Sidney Gorringwack - Thu, 22 Feb 2018 20:40:31 EST Tfi7s7JZ No.37446 Reply
OP, listen here buddy, you ought to make your presence known on 8ch.net/prog. Or better yet, some sort of blog where lower level lifeforms like myself can follow and pick ups morsels of knowledge, resources and ideas here and there.

I've been following your guide since it was just drunken outlines on /prog/. I have a couple questions about the guide, like the reality of the employment prospects of UoP and similar online unis. A more important question I have is how you managed to find all this, and how you upkeep your search for new materials, new pursuits, etc. I'd be interested to know your daily/weekly 'routine' if you will, at least in how it applies to these sorts of endeavors. I'm always amazed at how you'll reference some obscure paper that fits the bill perfectly. I'm convinced I know your precise account on HN, and reading some of your comments there has only piqued my interest further in terms of how you manage this (your breadth and depth is demonstrated better there, as it isn't limited in scope).

One criticism of the guide, if I may, is that is rustles my gotdang jimmies when you edit out a source I really liked. I used to be able to go into the github history and find the old edits, but they aren't there anymore(?). One example is the graphical introduction to LA, you had some website with a link I never bothered bookmarking since I thought the guide was static and unchanging. Another example is the removal of materials like Stillwell's Element's of Mathematics, which was a stellar read - this is why I'd like to see a guide on your prescription for math, or even simply a 'resource dump'. I'd also be highly interest on any financial advice you have to give, as you've hinted at a financially savvy nature (elance homework, zcash, algobots, etc).

Excuse the blog post, but I really dig your resources and the guide, and would like to extract a bit more usefulness out of you. FunctionalCS is my homepage, along with whatever module I'm currently working on. It's been a blast and as a maths major I really enjoy the rigor you've provided, I was delighted to see updates with Spivak and Apostol, which I've had on the backburner for too long.
Ian Nullerridge - Mon, 26 Feb 2018 19:15:21 EST Tfi7s7JZ No.37454 Reply
Samefagging myself just to reiterate that I'd be highly interested in a meager unorganized resource dump.
Martin Brubblefoot - Fri, 02 Mar 2018 00:54:16 EST ieWealWG No.37462 Reply
Good solid tech guid!!!

Try to learn by doing self challenges. Seeing how much you can do without using references will show your improvement and progress imo. Also using less 3rd party libraries.

Take a low level approach and if you are successful that is what defines a true programmer IMO.
Sophie Hocklefield - Mon, 05 Mar 2018 04:09:18 EST HH6lED9y No.37463 Reply
OP, do you have any tips on starting out freelancing? I am three quarters out from graduating with a CS degree so I have some knowledge but I haven't been able to secure an internship and for various reasons I need to work. I don't want to go back to crappy jobs if I can help it, so I wanted to pick your brain on freelancing. Is upwork worth it if I just needed to make say 300 bucks a week or so?
Sidney Crommlededge - Fri, 30 Mar 2018 21:56:04 EST Tfi7s7JZ No.37488 Reply
will you stop removing things you double jolly african-american
A_Wizard !cMZsY.BCnU!!vVWR8L52 - Wed, 04 Apr 2018 18:33:40 EST mJDH+xt3 No.37492 Reply
Just hang out in all the crypto chatrooms. Done.
A_Wizard !cMZsY.BCnU!!vVWR8L52 - Wed, 11 Apr 2018 20:41:16 EST mJDH+xt3 No.37513 Reply
1523493676068.png -(110901B / 108.30KB, 595x746) Thumbnail displayed, click image for full size.
Spardot doesn't even remember me...
Martin Bleblingdale - Fri, 13 Jul 2018 23:04:58 EST x6K3CZQk No.37575 Reply
Yes, I admit my commit history clobbering is indeed tiresome but there's several reasons for this.

1) The resource contained a bunch of errors without errata and I rage deleted after spending hours trying to solve something in hopes nobody would go through the same extended saga of rage.
2) I received a DMCA takedown req "These lecture/book notes may not be redistributed!" from some publisher even though I'm just linking them, have to nuke them from history
3) Paywalled once they discovered people were using said resource
4) My obsession with optimization now that I specialize in optimization and time constraints.

When I first started, I had access to all lectures for every undergrad course. Then I foolishly didn't archive, shilled their availability and immediately they ended up paywalled. So now what I do is archive the entire course first, do the course to make sure it's complete and actually worth doing, and then post it. I'm just glad these grad introduction courses are public. They're a good 'try before you buy' marketing for these departments as well, wish most grad schools had public lectures available. I started this with no idea where I'd end up and now it looks like I ended up specializing in optimization, so routinely I go through the list and delete shit that I recognize I didn't need to get to where I am now. For example the excellent new Expii.com resource started recently run by the US Math Olympiad coach. This is what Khan Academy should have been.

I also recently had my name added to a paper that was published in a journal, which is crazy considering just a few years ago I was a maximum brainlet on autopilot. I simply recognized an opportunity for optimization on an untractable problem and used an algorithm directly out of a stochastic optimization paper to randomly sample the search space and after a number of significant runs it turned out to be 99% as good as the known optimum the post-docs estimated.

Completely interesting book, though automated theorem proving is ready for a breakthrough with CHiTT (Computational Higher Type Theory) https://existentialtype.wordpress.com/2018/01/15/popl-2018-tutorial/ this is going to solve that exercise in 1.2.2 of TAOCP where Knuth asks you to "prepare a program that accepts, as input, other programs together with assertions that attempts to fill in the reamining assertions necessary to make a proof that the program is valid". I only wish I had more time to do dive into CHiTT but that looks like where the research is going.

All of the freelancer sites are shit for the most part, I slummed there just for experience, was often not paid for hilarious reasons like the payment was fraudulent and they charged me for it instead of going after their own customers, and I'm actually a shitty programmer I write highly abstract hacks that 'just work' because I prove enough properties to guarantee the programs will do what they're supposed to, but it's ugly non-industry standard code in obscure languages nobody would hire me for. If you're a new grad you'd qualify to get into toptal.com no problem but they set your rate, which is often low. A way around this is https://triplebyte.com/ and just take whatever offers until you get experience, or just roll your own consulting service and add 'premium' features where all you do is call to Algorithmia ML algorithms for rent, for example offering highly advanced visualizations and analysis but all you're doing is stringing together existing pay-per-use algorithms with whatever service you are offering. Shopify or Wordpress consulting is good for this, nobody will offer these features https://algorithmia.com/algorithms
Shit Bassleshaw - Sat, 14 Jul 2018 14:32:48 EST VQRmKoLO No.37576 Reply
>I make money from cloning shopify apps

Am I understanding this correctly, you steal other people's apps and sell them on other platforms?

Out of curiosity, what programming languages are you actually using and consider yourself to be good at?

I've started my whole journey by learning C, which was relatively easy and fast, and then moved onto linux, bash, tcp/ip, xml, networking, private/public key concepts and the different modern cryptography stuff -- basically jumping around a bunch of stuff I needed to get personal/hobby projects to work.

I also noticed with Math, that once you come across something you want to understand, but you just don't get the math, you just find-out what topic of math it is a part of, which topic that is a sub-topic of etc. until you get to a point you understand and then work yourself up. On the journey you can take some detours to pick up other stuff that might come in handy later as well.

Anyway, all went smoothly until I decided to learn my second programming language: C++. Everyone raved about Lippman's C++ primer 5th edition. So I got a hold of it, and holy shit. I've been at it for half a year now and it's so demoralising. At this point I'm 75% done so I'll just end it, and I didn't stick to spending a lot of time on it regularly. But I really don't think it's as good a book as people make it out to be. The main problem is that it doesn't offer solutions to it's exercises (and some of these exercises are like: "Why do you think that is?" -- dipshit, you tell me!). Fortunately there are some solutions on github by other people.

Anyway, interesting stuff. I'll definitely have a look at Knuth's ancient book once I'm done with this damn C++ primer.
Oliver Harringforth - Thu, 19 Jul 2018 18:50:55 EST l33Uq0q7 No.37582 Reply
Hey OP!! (I'm the one who called you a double jolly african-american)

Thanks for all the work you've done. Do you happen to have any of the CMU 15-122 Principles of Imperative Computation lectures archived? I'm interested but don't want to spend money.

>When I first started, I had access to all lectures for every undergrad course. Then I foolishly didn't archive, shilled their availability and immediately they ended up paywalled.
got dang jolly african-american jews man

>maximum brainlet on autopilot

Is there any place where I can ask you questions with a little less latency (< 6 months would be cool)? I don't wanna litter your github page with mundane / illicit requests (like asking for a copy of a paywalled course). I could further contribute to the the github page as I've been trying to develop answer keys to books that omit some answers (I can't guarentee their accuracy though, of course).

And lastly, I would REALLY like it if you could possibly find the time to maintain some sort of bookmark/resource sharing page for cool articles, alternative resources, etc. I know you try to keep the FunctionalCS cirriculum concise, but I'm interested in a lot of alternatives and tangential links you've provided me with. I'm not asking for anything even remotely structured, but I know you have a mountain of great resources that would be a blast to peruse.

Thanks again OP, you the man!
Nell Drimmlehood - Fri, 20 Jul 2018 20:53:56 EST x6K3CZQk No.37583 Reply
>Am I understanding this correctly, you steal other people's apps and sell them on other platforms?

Well, it's 'reinventing' not stealing, it would be stealing if I lifted their proprietary source code though I did once get a threatening lawyer email from some guy who apparently owns the rights to any exchange displays that show current bid/ask if they are in the same column, where the prices meet together (If you've always wondered why this is on two columns on every site, now you know). I don't make these apps anymore but what I did is I would find the top selling marketplace applications, on every medium sized marketplace, so Wordpress, Shopify ect., I would copy their features, add dozens of my own, and charge a fraction of the price they were offering. When I did this sometimes the larger apps making gargantuan dollars with thousands of subscribers would offer to buy me out which I accepted since I don't want to be in the business of customer support, and sometimes they would threaten me or even have the marketplace ban me because all of these marketplaces are totally corrupt. By ban I mean make up complete bullshit that somehow I violated the TOS but it was obvious all they did was bribe an employee there who just killed my software. The one time I complained about this I just got a lawyer prepared form letter than basically dared me to sue them so fuck these marketplaces, eventually they're all going to be destroyed when we have a decentralized 'blockchain' (if you're interested in this, read everything @Homakov has to say about failsafe network).

>Out of curiosity, what programming languages are you actually using and consider yourself to be good at?
Common Lisp for the most part, though I used CLisp as glue also to patch together different things, like an auction app I once wrote in Erlang simply by typing 'Auction' into Google Scholar and finding an old paper where some Masters students explained their architecture using Erlang's BEAM vm. Whatever you want to make, type it into Google Scholar, and prototype that paper in Common Lisp. Then you'll understand the problem better and be able to make a release in X language that is best suited for it. For example there is the CompCERT verified C compiler and excellent .pdf 'Verified C' floating around. Something like this would be awesome to implement a hacky EVM in despite the performance of the verified compiler. http://vst.cs.princeton.edu/
All you need is Norvig's PAIP book, where he introduces OOP style in Common Lisp. You dick around in CLOS and then you will understand C++. This is the problem with OOP books they are gigantic piles of confusion that Norvig explains in a few paragraphs. Now that you know how everything works at a high level, you can look at the most recent spec and tooling and figure it out for yourself. This entire course is in C++ http://15418.courses.cs.cmu.edu/spring2016/lectures and there's also the Parallel C++ book with a crash course in C++ templates https://www.cs.cmu.edu/~15210/pasl.html
Nell Drimmlehood - Fri, 20 Jul 2018 21:25:13 EST x6K3CZQk No.37584 Reply
>CMU 15-122 Principles of Imperative Computation lectures archived?
No sadly, I watched them on panopto and they truly were amazing, he'd go through a function, prove it, then show all the various corner cases and fucked up logic to then prove it doesn't work. The theme of the class was to not think operationally, which everybody who asked questions in the class was doing until the midpoint where finally people understood their own intuition was wrong. It's def worth paying for, if you get a vacation go to Raleigh NC it's a college town, plenty of girls in the bars and shit to do, it's the south. However there was some anon on /g/ with an FTP site he was shilling who I believe archived the lectures as I sent him the link to download them. If not just make do with the lecture notes and look for other vidjyas on programming contracts.

Also by all access I mean I could watch and download any labs on piazza or andrew but back then I was naive expecting content to not disappear and often it does, so now I archive everything.

As for other curated lists, just search github for 'curated' there's plenty of meme lists on there filled with resources. If I had more time I'd check them out but I'm in grad school right now so literally no time for anything, in fact I should be reading 3 papers right now and writing a survey about them. Something I definitely will fill out will be the 'General AI' section, because ML/Deep Learning is just icing, there's no cake there. AI is all about the cake, can this system make it's own decisions or is it just mapping shit together like the famous Chinese blackbox. Chinese characters come in, something maps the character to a translation, translation comes out other side. Does that mean the "AI" can speak Chinese or is it just mapping shit? If you look at the latest version of my meme list I added a class by Sussman in 2017 where he had grad students read an old paper and then make conclusions on it from a 2017 standpoint. All of those ideas are still good, and personally I think Deep Learning is a dead end until we can get GPUs that aren't just dumb blackboxes, or multicore CPUs, a 1000+ core handheld device that can instantly train itself when walking into a room will change the way we live but right now it takes forever to do training, even with whatever super GPU is being offered for rent on some Silicon Valley cloud service.

All the old ideas in the 1970s that nobody pays attention to now seem almost feasible, so I'm going to fill out that section the most in the future since that's what I'm doing in school anyway (plus optimization).

Finally Knuth's book, if you want to make a lot of money, study it carefully. Now go and write optimized Solidity assembly. Ethereum your datastructures have to be O(1) or you risk gas limits, so there is unbelievable demand right now to handroll either an interpreter that outputs EVM bytecode or hacking inline Solidity assembly. As for contact I have no time, this is the curse of knowledge. Once you get just a little of it, you realize how much you don't know, and how little time is left to learn it. I can't read a pulp fiction book, watch a movie or basically do anything except gf/friends/research these days because time is the fire in which we burn (stolen TNG quote).
Nell Drimmlehood - Fri, 20 Jul 2018 21:48:45 EST x6K3CZQk No.37585 Reply
1532137725647.jpg -(42262B / 41.27KB, 480x786) Thumbnail displayed, click image for full size.
Since I"m here ranting, another thing I've been doing is corresponding with Stallman just picking his brain on the kinds of decentralized architecture he would design if he still had the time to do so. Stallman has a ridiculous engineering knowledge of circuits and how they work, how they can be abstracted to something like Sussman's Art of the Propagator paper, how they can be verified to be correct, ect. Also considered a GNUniversity kind of curriculum, some Common Lisp undergrad with all free material. Note, as for politics I'm non political but I'm also a skinhead, so I roll the streets of holland these days going to see cringey working class skinhead music since that's my roots https://youtu.be/Pfs9A-THWoU

But after being banned from almost every marketplace, even if I wasn't cloning a competitor and just releasing my own original work, I realized what a scam the entire industry is and how it needs to die with decentralization, esp decentralized search. I'd love to kill google's main money source and watch all those valley dictators be out on the street. I would be happy to die penniless if it means I can guarantee the future generations will have freedom from these corporate structures. If I'm lucky Trump will kill them first if I'm not lucky I spend the next 20 years going broke propagating search results for no income.
Phyllis Sittingmitch - Sat, 21 Jul 2018 17:15:23 EST l33Uq0q7 No.37590 Reply
Are there any other lectures/resources you think are worth searching for that are now paywalled? I should probably archive everything on the functionalcs list before anything else gets paywalled..
Isabella Buzzville - Mon, 23 Jul 2018 02:55:16 EST azETPZ8l No.37591 Reply
Hey OP!

Out of all the "intro to programming" tracks, is there one you recommend over others? The CLisp set looks like the most thorough.

Also, is the "elementary math" stuff really enough to get me up to speed if I barely remember high school math?
Sophie Gabbleson - Mon, 23 Jul 2018 05:17:20 EST 7I/LRcOk No.37592 Reply
Not OP but the elementary math is plenty, and I had actually begun CLisp before this cirriculum was posted and had really enjoyed it. I'm going back through it now though and can only recommend it more.

Depending on how rusty in maths you are, you might want more resources for high school level stuff - let me know if the links provided in functionalcs are inadequate and I'll try to provide some remedial resources.
Rebecca Socklefoot - Fri, 03 Aug 2018 23:53:56 EST x6K3CZQk No.37614 Reply
I recommend 'An Infinite Descent into Pure Mathematics'
If you already remember high school math.
I didn't, so had to constantly review elementary algebra while doing both that CMU pile of lecture notes and also Apostol's Calculus.

Remember math is a syntax for modelling the behavior of something natural. Speaking of I'm going to add this to the list, it's a good high level guide to complexity theory from Harvard everybody should read who's interested https://www.math.ias.edu/avi/book because the nature of computation comes up in everything.

Common Lisp is still a secret weapon. It's my favorite language, routinely I pull off somethign in Lisp I thought was impossible. I also like Erlang, you guy's want a freeBSD fox running 2 million concurrent connections then look into Erlang. You want to rewrite an entire software as a service into a small program, look at common lisp. You want to model pattern matching, higher order functions, OOP, logic programming, anything, you can do it all in common lisp. If you like CLIsp I highly recommend Norvig's old AI book, also I will be filling out more of the AI section (general AI.. aka: meme AI) as that's now my grad speciality plus optimization.

Rebecca Socklefoot - Fri, 03 Aug 2018 23:57:56 EST x6K3CZQk No.37615 Reply
Oops, forgot to reply.
The best lectures that are now paywalled are Rob Simmons 15-122, and his compiler course. I had access to both and the guy is some kind of genius when it comes to teaching. Showing you all the right things, slapping you on the back for proving a function, then pointing out how you totally failed and missed a dozen things because you were thinking 'operationally' and not computationally. He's a really good teacher, which is why I shill him hard on the meme list, if you want an amazing education save some KFC double down money and go vacation in North Carolina and take some guided instruction from him.
Rebecca Socklefoot - Sat, 04 Aug 2018 00:13:03 EST x6K3CZQk No.37617 Reply
Also, if nobody remembers there was an MIT professor who had all his lectures shit canned from Open Courseware because he apparently tried to pick up some girl who emailed him. Because he was retired and had tenure, they couldn't do anything about it except kill his lectures.

This is why I started archiving things, because the personal behavior of a brilliant professor in this modern society leads to information just being deleted from the history timeline. It freaked me the fuck out, regardless how creepy this old man was, the act of just removing from the timeline his lectures (I was following at the time) was an incredible red pill. Soon all of us will be deleted from the timeline. Yes, everybody here, esp anybody who frequents the dark corners of the internet like 420chinz and wherever else. You will be deleted too. Gone from the timeline. Gone from history. Erased. http://news.mit.edu/2014/lewin-courses-removed-1208

I guarantee you Pythagoras broke all these rules too, if you've seen the MIT lectures on Discrete Mathematics, they persecuted a man who noticed that the square root of 2 was irrational, which was heresey at the time because all math was rational, so the Pythagorean sect had said man killed. This is the timeline we currently live, heresy to the political status quo means DEATH.
Ian Channerfirk - Sat, 25 Aug 2018 23:57:17 EST k5mj/iTh No.37633 Reply
Hey OP I know you're a busy guy but I'd really LOVE if you could keep a separate etc-like page for just plain ol' cool resources and good books, talks, etc. I appreciate the philosophy of minimalism in your guide, but I really enjoyed some of those old detours like Stillwell's Element's of Mathematics that you used to supply. It doesn't even have to be organized, but anyway thanks pal. It's a fun ride.
Nicholas Heckleridge - Sun, 26 Aug 2018 18:31:23 EST B01eYMws No.37634 Reply
Goddammit, that's a real blow. I need build an archiving script fast. I know how to get the video URLS and stuff, but it's annoying to do it all manually. Well, just a little bit more c++ and I'll move to python, bash and stuff. Which should be all I need to write some quality archiving scripts.

I'm actually giving the C++ primer 5th edition a slightly higher grade since, even though cumbersome it does really teach you almost the the entirety of the language and things left out are mentioned and given some hints to build open them yourself (which is pretty easy once you understand all the terms are deep enough in. But again... it has problems and takes a really long time to finish. And I don't think it has any real value if you don't finish the majority of chapters properly. Besides some joke programs I wrote (which are great exercise to refresh all the things you've learned and improve a bit on it, )
Shit Fommlestidging - Mon, 12 Nov 2018 22:15:32 EST OONCb2Oo No.37678 Reply
Bumping and requesting OP discuss the differences between HtDP and the MOOC How to Code (I understand the course is based off the book). I liked the MOOCs content but overall hate MOOC's and much prefer textbooks, maybe supplemented with lectures but not with the tight integration and visually controlled pace that MOOC's force.
Fanny Duckhood - Thu, 22 Nov 2018 08:48:36 EST zuSwaRiH No.37681 Reply
imo HtDP is completely unnecessary and I'm not sure why OP added it back to the site. Just read the Lisp, Scheme & ML books if you're starting out.
Caroline Grimbanks - Sat, 08 Dec 2018 23:02:51 EST x6K3CZQk No.37683 Reply
the reason I added it was because of data driven results, something which I became a fan of after doing all those ML and stats theory courses. HtDP the book is much better than the MOOC, as in much more rigorous. If you're reading this and you've never programmed before you should do both, get the insight from the MOOC and then do all the rigorous assignments from the book. The PAPL book (sequel to HtDP) covers a lot of compiler things too, something which helped me get my current job on "wall street" (well, hong kong wallstreet).

I also can't shill that Math Background for ML youtube playlist enough, they're long videos but you will learn stats theory from them. I credit them, plus HtDP, plus 15-210/15-150 direclty for my present 9-5 job. Like most people here I usually reject jobs and all that conformity, but just working with experts in programming who went to ivy league schools is worth it imho since I don't have this background being that I grew up a dropout.
Caroline Grimbanks - Sun, 09 Dec 2018 03:17:05 EST x6K3CZQk No.37684 Reply
Yes the excellent Stillwell book, it's where I first learned how to 'prove' the square root of 2 is irrational by using Egyptian fractions. Last commit I added in a really good Shriram Krishnamurthi talk about creating a compsci curriculum and the various pitfalls https://youtu.be/5c0BvOlR5gs but sure I'll make another repository sometime of random resources I've come across like all the good Ryan O'donnel notes where he shreds probability fallacies. II have many more recorded lectures too from my short time in Holland taking two semesters of optimization in grad school. The CMU and Brown U courses are so good though, once you get used to them all other classes are too slow and easy. I'll try to put up some djb talks too, if you get past IEEE paywall access you can get many of the talks on his site which are usually just released as slides only, like this one ripping apart the shit state of all crypto software https://cr.yp.to/talks/2018.11.15/slides-djb-20181115-cryptosoftware-4x3.pdf

Also, since this is 420chan https://www.youtube.com/watch?v=TuNNcOEgc4Q
Shaggy - Sun, 09 Dec 2018 05:05:29 EST zuSwaRiH No.37685 Reply
>Once I killed it on elance just doing other people's exams/homework for SQLite/Postegres

What exactly do you mean by this? Looking on Upwork now can't seem to find a lot SQL only jobs
Caroline Grimbanks - Sun, 09 Dec 2018 14:22:58 EST x6K3CZQk No.37686 Reply
wait until its exam time and lots of homework/projects they haven't finished will appear, plus direct offers if you're advertising yourself for sql. There's also plenty of jupyter notebooks + sql jobs, like this https://www.upwork.com/o/jobs/browse/c/data-science-analytics/sc/data-mining-management/details/~0152bce95cabda9e98/?q=SQL

You could easily do that after completing 15-388, and every other data extraction or visualization work posted there. http://www.datasciencecourse.org/lectures/ in fact 15-388 is the most useful course listed in terms of wanting to immediately freelance afterwards scraping amazon for junk and stuffing results into spreadsheets or dbms. Of course these shitty freelance sites don't pay a lot but 3hrs a day, you could clear $150/day doing 2 jobs enough to cover whatever expenses and then jacking your fees up as you get experience.
Shaggy - Sun, 09 Dec 2018 15:35:42 EST zuSwaRiH No.37687 Reply
That's pretty neat, I thought web dev was the best thing for freelancing so that's what I've been studying but honestly it sucks, don't like it one bit. So I'll give this data science thing a shot for a month or two. $150 seems like a fuck ton for only 2-3 hours if you ask me. Any suggestions for getting up to speed with the prerequisites (maths) for that course? I just want enough to actually start making money, and then I'll look to improve on the fundamentals. Thanks mate, cheers
Charles Sobblechud - Mon, 10 Dec 2018 03:22:15 EST x6K3CZQk No.37693 Reply
Really there is no prereqs, if you don't get something just directly look it up in one of the other resources or ask math stackexchange. They explain all the notation since a lot of masters students take the course and they don't know their undergrad math background.

Somebody reading this far into the future, and your goal is not casual interest in theory or freelance, and you want to do the absolute bare minimum to squeak through a difficult finance or silicon valley meme interview, my advice from recently going through and passing these annoying hiring rituals:

Start with PAPL, it's 4 semesters of CS in one book: https://papl.cs.brown.edu/2018/index.html and uses 'Pyret' which is essentially typed Racket without the parens. Note the similarities between ML/Pyret, easy knowlege transfer from Pyret to OCaml, or ReasonML, or any functional language really. Also note the graph sections, basic algorithm analysis, parsing, interpretation, everything you need as a foundation. You can now answer questions about memoization, traversing trees, ect. This will also satisfy the most important skill: being able to talk your way through a problem, and find a solution yourself, as the author talks his way through the problems with you.

Next, the ancient and small book: The Unix Programming Environment by Kernighan and Pike. The first 5 chapters will answer: how would you count folders in a directory, list 5 programs that begin with two letters and what they do ie: cd, ls, ps, ld, given a list of strings, return all groups of acronyms, ect. It will teach you bash scripting and awk filters, everything you need to know about grep, ect. A 'gotcha' question is how is cd different from all other unix shell programs, the answer being found in the book that only the shell process can change directories itself, so it's typically built into the shell. Explained more here: https://en.wikipedia.org/wiki/Cd_(command)#Usage

The 15-388 Practical Data Science lectures as they are a crash course in manipulating APIs, SQL, and how to model and analyze data. You will probably be asked about map/reduce, big data, all of that is covered here.

You will need to know the difference between constant and linear time (click videos) https://www.cs.cmu.edu/~112/notes/notes-efficiency.html

Finally, the Parallel & Sequential Algorithms book, 15-210. Any questions balancing trees, hashing, dynamic programming, queues, and all optimization tasks they'll ask you are found here. Since you've done PAPL, you can do this book, it's in functional pseudocode. The math prereqs are familiarity with basic notation and proof by induction, all of which you can learn in a calculus book or try the CMU 'intro to pure math' book https://infinitedescent.xyz/ or maybe you don't want to do any 15-210 homework and just translate the algorithms into your functional language of choice and manipulate them however you want.

Optional but sometimes there's an array task. An interesting representation of Arrays I haven't seen elsewhere is in Vol 1, TAOCP. Knuth represents them as a linear algebra matrix. Any questions asked about manipulating arrays, you're now just manipulating a matrix using basic linear algebra techniques. There's a 1hr crash course on basic matrix ops here: https://youtu.be/hvvPRbXc0-o or go through stack exchange and read everything there is about optimizing arrays.

Somewhere in all of this write features for any open source project. An easy mode for this is use your experience from the parallel algorithms book to break up the work of something and increase it's efficiency. If you can get just one PR reviewed and approved congrats you are now a 'working programmer' and can go apply to finance companies. You will already be better than 3/4 of other candidates who will have zero PRs and parachute into interviews with maximum jackassery. They've had a lot of problems with candidates who think they know everything already, and plan to act as the new CTO immediately upon being hired. If you're not one of these people and can at least talk your way through a problem you're in.
Thomas Buzzfuck - Mon, 10 Dec 2018 10:51:37 EST zuSwaRiH No.37695 Reply
Are you planning on adding anything blockchain related to the site?
Charles Sobblechud - Mon, 10 Dec 2018 13:12:06 EST x6K3CZQk No.37696 Reply
There are already a lot of curated lists on github for blockchain related material, you're basically just using an API or a library. It only gets interesting if you decide to write EVM output directly. My personal totally unqualified recommendation is forget all of them and just look at this project by Egor Homakov https://github.com/fairlayer/wiki who specialized in software security before deciding to write his own full node prototype. His articles destroying the sad state of altcoins and stablecoins are interesting https://medium.com/@homakov
Frederick Pitthood - Mon, 10 Dec 2018 17:41:20 EST 13VDkZHc No.37697 Reply
I guess I could dump what I have, there's this open Berkeley course w/lectures on YouTube but I haven't taken it https://blockchain.berkeley.edu/decal/fa18/fund/ my blockchain 'engineering' strategy is just using google scholar to find papers, then following all the citations which typically lead to good survey papers or in depth protocol descriptions.
Albert Dollergold - Thu, 28 Feb 2019 09:19:07 EST +ZPk5Yi7 No.37701 Reply
guys do you have anything on Coding/Information theory and related probability?
Cyril Gablingman - Sat, 09 Mar 2019 18:23:05 EST Xdvh/Cps No.37707 Reply
not the same guy, but if you're not gonna share all your bookmarks and such, can you share how you find these great resources? as an example, I wouldn't have been able to find CMUs Python course you list. Books are easy enough to find via recommendations and reviews, but I don't know how you manage to source all these .edu sites and I'd be thrilled to know.
Fanny Bunlock - Fri, 15 Mar 2019 22:39:19 EST x6K3CZQk No.37717 Reply
The way I found these courses was mainly due to research methods I learned in said courses, like the data scraping course where I'd archive the entire CMU or Stanford site then test what didn't require a login. Back then almost nothing required a login, the OS course, 15-122, ect were all open. Then I of course foolishly posted them and they all ended up paywalled. I try to keep the course list on the down low, posting to obscure chans to find people like myself but it gets posted to HN and wherever these days but I'd prefer it wasn't just so nobody notices people are getting free access ergo shutting it all down. When I scrape most universities these days it's almost all entirely Piazza links unfortunately which means paywall.

My recommendations to find more of these courses is just go through their course offerings that year and look up the course numbers/professor or TA names to get the course page. I sometimes used a search analysis service for this, like Ahrefs (note, they hire remote ocaml devs if interested) also github looking for public repositories where some student archived the labs and other assignments. I've also written a few professors and asked them to keep lectures open, or record lectures for the next semester to be posted on youtube. Can't do this anymore because of the Berkeley lawsuits where people sued the university claiming the free lectures they dumped as a public service weren't accessible enough and as a result hundreds of lectures disappeared off YouTube. To make a long post short, lawsuits basically prevent universities from just fully opening their courses. I always thought it was due to tuition grubbing but no it's lawsuits. I also follow professors now as they move around and check their webpages for classes or theoretical talks they give, like Ryan O'Donnel which is probably my favorite professor since he's opened most of his courses https://www.youtube.com/channel/UCWnu2XymDtORV--qG2uG5eQ/playlists the Quantum Computing courses are very good btw, you're just learning the quantum information theory model and how to write a (randomized) algorithm that will run on a quantum architecture. No PhD in Quantum physics needed just like you don't have to be Von Neumann to design algorithms for X86 architecture. There is lately a lot of places desperate to pay people to do this if you look around like Rigetti Computing.

One thing I may do is add a graduate section on algorithm design since I've been doing a lot of algorithm design lately. Cornell has my favorite version of notes as it's entirely the core theory of algorithms http://www.cs.cornell.edu/courses/cs6820/2018fa/lectures.html combined with the two recommend books: Algorithm Design, by Jon Kleinberg.Éva Tardos and The Design and Analysis of Algorithms, by Kozen. The Kleinberg/Tardos book is pretty amazing, walking through each strategy in plain english instead of the typical theorem/proof style. The Kozen book takes the theory and then shows how knowing the theory can help you solve problems in matchings in graphs. Of course all of this you can also learn in The Art of Computer Programming series too if interested though I've noticed randomized algorithms are becoming the prevalent solution for solving a lot of traditional computer science problems lately, especially with all these Quantum startups prolifertating. If I were to bet money on what subject will in the future become the most important meme degree like 'Machine Learning' is now, I'd say anything to do with probability, estimation and randomized algorithms.
Fanny Bunlock - Sat, 16 Mar 2019 00:25:52 EST x6K3CZQk No.37718 Reply
1552710352990.jpg -(8298B / 8.10KB, 480x360) Thumbnail displayed, click image for full size.
Since I'm here and never post, I'll talk some careless shit, primarily money, schemes, side projects.
Mainly because if you were me +/- 5 years ago you'd be broke and living off schemes like I used to, so let's talk schemes as everything is constantly evolving in the scheme space.
My strategy back then was simply clone a service, charge 1/2 as much, add twice as many features and then (don't tell anybody) deny service to that service. I didn't do it the 'illegal' way by pounding them with DoS traffic, I just discovered loops that wouldn't terminate, accomplishing the same outcome. This is straight from my original background in reading 2600 and hanging out in IRC all day, which is pretty much max cringe in current year. I'm assuming what I did wasn't illegal but who knows, anyway today is not yesterday, and this strategy won't work. So you want to make money now.

Again functional programming is your secret weapon. If you know say, OCaml, you can go on your local craigslist and just advertise that you can make the impossible realized. They want a combinatorial auction service? Message passing to shared-memory threads as a programming model for parallelism then solve the bids. Use google scholar for anything you want to make, somebody has already made it in theory, or they wrote a survey paper. Transact their paper into OCaml code and sell your MVP for scheme bucks like I used to do. The reason why I shill OCaml so much is not because I'm in love with it's syntax and shitty libraries but because it has at least some libraries (more than SML) and you get ML modules. The idea of modules is from abstract algebra, and from Alan Kay's orig idea of how OOP was supposed to be: message passing over a massive network of distributed servers all performing their own algebras. An algebra is a module, the official wikipedia definition being an algebra is a module, wherein you can also multiply two module elements. ML family languages are not like regular programming languages where you simply import a library and then get some kind of syntax abbreviation to access it's functions, it's an entirely different world where these modules can even be compared and proven equivalent. You can abstract the abstract modules. What this means is rapidly prototyping something totally insane, that should be possible in any other language. And, because you are presumably a solo developer without a team of testers, you can get away with this because of the type checker/compiler, you won't have to cover all edge cases like you would in an imperative language. This isn't to say there isn't still bugs, but easy bugs won't manifest. This was my primary motivation for creating this curriculum. A solo developer, somewhere like me, who has no money, no team of QA coworkers, no graduate knowledge of covering all edge cases, just somebody who knows enough theory they can apply it in unusual ways that nobody else would think of, because they're all distracted by 'industry', and massive teams of people. You of course need those people, but hustling a prototype that can do the impossible while at the same time you've proven in Coq that most of your program logic is sound? Then extract the OCaml code and realize you've done something everybody else said was impossible.

As I further digress into cringe territory I will surely regret in a decade when this thread is still around and Kirtaner has replaced most of his organs with Chinese replacements and ends up living for eternity in the matrix, the whole point of my pile of links was to find people like myself who think the confines of present technology doesn't need to stop them from going on google scholar and then implementing whatever paper they've just read. A good example of an abstraction somebody figured out is all these delivery sevices like Foodora or whatever. There is just now a big menu of anything you want, and multiple orders from different restaurants can be delivered all at once. The restaurant itself was abstracted away. Now every restaurant in your city is your menu. Think about abstractions like this, how can you just remove everything and operate on a higher level. Write an MVP and sell it somewhere. This is the kind of schemes I was interested in side projects. For example MIT comes up with a new fast fourier transform, finding better compression by noticing most video and audio signals are sparse, and releases a prototype. All you have to do is write a new library off their paper, and abstract it so nobody knows what's happening. They just get lighting fast video and think you're running some massive content delivery network. I frequently did this with protocols, rewriting them so they'd be unique and then creating my own network out of band of everything else. Try this sometime, just create things everybody else says is too hard and make. Get an experimental record like this https://youtu.be/f27fW9qM1JM and then process it through different transforms. There's plenty of them https://groups.csail.mit.edu/netmit/sFFT/

Finally I will shill literate programming. Knuth has told numerous interviewers, if you wish to go beyond the confines of regular programming abilities you should try literate programming. Like everybody else I looked at the primitive tools for this (CWEb, and other abortions) and wrote them off as impossible to work with, plus believed the criticisms of refactoring and whatever.. Then I started doing logic in Coq, and other proof assistants. A lot of that work is semi literate, you describing the program logic specification, and one bored morning I decided to write a multi core program of ridiculous complexity and it all came together easily just writing it out in juypyter notebooks, which supports OCaml and other languages. It does seem that talking your way through something helps you write it, without bugs. Refactoring, contrary to popular belief, isn't impossible with literary programming but once you try it, you'll find you'll never need to refactor, especially if what you're doing is amenable to abstract type and modular.. Everything I write these days is in this style now, or 'paradigm'. Find the most difficult paper you can on google scholar/arxiv, describing an implementation of some theory. Follow the paper and write your own complete hack implementation using literate programming, it'll probably work.
Phyllis Dreddleville - Sat, 16 Mar 2019 17:54:23 EST Xdvh/Cps No.37721 Reply
Holy shit, wow! Thank you so much. I think those meta skills rival the value of the resources themselves, personally. Good to know I'll pick it up as I go, that data scraping course (which I've been working through) has really amped up my internet power user game so I really had me wondering how you found this stuff, and your explanation is sort of what I roughly expected.

Out of curiosity, do these walls normally require student enrollment? Or can I just pay $5 to scrape a site, or something? I might be willing to pay a little bit for some of the courses you've described as lost to paywalls, but not anything over $20 really. I imagine the fee is more than what I'm willing to cough up anyway.

Nice anon, if you start a blog let us lesser beings know! You're writing is always extremely motivational.

>think about abstractions like this, how can you just remove everything and operate on a higher level.
Solid anecdote, I've had many similar thoughts and ideas since starting the curriculum, but I'm not quite productive enough yet to pump anything out quickly, but I'm trying. Though I have developed some really ugly programs for myself (mostly for some second hand good flipping, hopefully automating some service arbitrage soon too). I really cannot wait until I'm able to smoothly develop apps and SaaS products without breaking my back on a prototype.

>Everything I write these days is in this style now, or 'paradigm'.
That's awesome, I've just begun scratching the surface in with literate programming in emacs.

Thanks for taking the time, anon. Your presence over the last couple years has had a big impact on my programming skills, and, more importantly, the way I think. /cringe
Reuben Blizzledock - Wed, 20 Mar 2019 21:18:47 EST x6K3CZQk No.37725 Reply
To get access to paywalled/Piazza walled bullshit you need a student ID. This isn't all that hard to get if you find a former student or pay a current one to upload lectures to your seedbox though more and more professors are just posting to YouTube these days then deleting the playlist after the semester because screwing around with proprietary video streaming is too much hassle/expensive. So all you need to do is archive before they get pulled down at the end of semester

I redid the beginner math prep section (again) because I finally found a single resource that covers everything, that isn't out of print or filled with errata, or that assumes any background of the reader. It's legendary /sci/ meme mathematician NJ Wildberger, who's foundation lectures I didn't watch until recently. If anybody has a shit background in math these are what you want to redo your terrible previous education in a series of 10 minute lectures. All the proofs are in basic arithmetic and you end up doing so many that by the time you get to CMU's discrete math course it'll be second nature watching prof Ryan O'Donnell stuff large expressions into arbitrary variables and manipulate them to form a proof. Wildberger's crazy rational Trig is also so simple a primary school student could do it by hand.
Charles Duttingshaw - Fri, 29 Mar 2019 15:34:36 EST GGsT9PTU No.37734 Reply
Why are you guys so obsessed with courses? All they are is explaining the book that you will have to read anyway.
Ernest Grandson - Fri, 29 Mar 2019 23:14:19 EST x6K3CZQk No.37735 Reply
1553915659345.png -(117795B / 115.03KB, 680x1451) Thumbnail displayed, click image for full size.
Most of these courses don't have a book, for example 15-251 is primarily lectures with course notes exercises, the Machine Learning courses are all entirely lectures covering edge cases not in any books, really the only lectures that completely follow a book are the systems architecture course 15-213, and the two complexity theory courses but even there, Toda's 2nd theorem is like 6 pages in Arora & Barak, whereas the lectures they easily walk through the entire proof and expand on the lemma remarks instead of you spending a better part of the day trying to decode 6+ pages of notation. Projections onto a convex set probably would've lost me as well if I went off a book.

If you did just want to primarily use a book, you could shortest-path most of the undergrad curriculum with PAPL -> Discrete Math w/SML -> Parallel & Functional Algorithms book and watch the 15-213 lectures in a week. You'd learn recurrence relations, greedy algorithms, set theory as a program and proving correctness, complexity theory, interpretation and briefly compilers, memoization techniques and how to exploit cache locality, graph theory/trees, analyzing extremely obscure shit like garbage collection or dispatching depending what lang you're using, and how to just abstract away the entire details and look at programs like a god would look at the 3D world, something I have to increasingly do where I work lately.

Speaking of work, I have killed it at bounty hunting lately, all those gitcoin sites with bountys for commits. Also, speaking of books, I think I will write a jupyter book series walking through the Cornell OCaml course with how-to bounty hunting, since the primary objective of that course is how to teach yourself any language. It's also almost shocking how different my life is from when I first started doing this 7 or so years ago. I had what could be called a totally insane world view, basically being a blackhat but giving all the money away (they trace you through money). I concocted this scheme that I would elevate the community around me in order to elevate my own shitty life. It actually worked which is the craziest part. I have some articles in 2600 related to this I wrote that were published, (and blew my opsec, goddamnit) but that's all I'll say that time was literally brainlet to the maximum epsilon and I am embarassed that guy walked the earth under my name. I only survived due to dumb luck. Now, the more I learn about probability the more I realize how I actually just tossed some dice and can be here to write this. The tl;dr of this is no matter how clever you think you are, the criminal schemes are a dead end, and surprisingly, you make way more money not being a criminal just it doesn't come as fast. When you're in the shit doing stupid things it comes tomorrow but if you play the system, it's just as sweet without staying up all night wondering when you're going to get it. My competitor got it in the parking lot at his gym because it was just suspicion of doing set ups, not even a sliver of proof. That woke me up real quick but is a story for some anonymous board on fictional nonsense not here.
Ebenezer Dartworth - Mon, 01 Apr 2019 13:34:20 EST zb32WQST No.37736 Reply
Is it okay if I do SICP instead of PAPL?
Ebenezer Summerstone - Thu, 04 Apr 2019 12:20:25 EST x6K3CZQk No.37740 Reply
Sure, the author of PAPL claims SICP is 'the best CS 101 text ever made' in the first chapter, and has modelled the book after SICP, like the tabular data chapters(memoized procedures) plus most of the exercises in SICP will end up in labs in nearly all the courses. There are some problems though, such as this: https://stackoverflow.com/questions/5499005/how-do-i-get-the-functions-put-and-get-in-sicp-scheme-exercise-2-78-and-on For people who use imperative languages, like Java/Golang or whatever, Cornell has a good set of tutorials on how you can design yourself any kind of array sorting or other imperative datastructure without needing to memorize CLRS to pass those terrible whiteboard interviews and codility tests. Your array sorting algorithm just kind of writes itself, so all you have to do is remember how to logically step through their 4 procedures, and no matter what imperative algorithm somebody asks you to do you can do it.

If interested you start here just learning the notation: http://www.cs.cornell.edu/courses/cs2110/2017sp/online/programCorrectness/programCorrectness.html click on the faces/avatars, they lead to a playlist: https://www.youtube.com/playlist?list=PLTD_NtzzD4VCSiMx_-6hrKfva0TdgP234
Then proceed to their playlist on Loop Invariants https://www.youtube.com/playlist?list=PLTD_NtzzD4VC6l2uLdzbsm9wW21mMaWwj
For example, here's designing with their '4 loopy questions' https://youtu.be/T3HqmkdKqsM which I tried out on some array algorithms out of CLRS at random, it works nicely. In functional programming you would be finding representation invariants instead for ADTs/modules, but for any reason you need to write mutable code this is a good method since you only need to remember 4 things.
Walter Choblingfield - Thu, 04 Apr 2019 13:07:30 EST czIU0qQN No.37741 Reply
Holy shit man! Where did you find those resources? Thank you very much for providing them. I'm just a freshman at college btw. Just starting my first course here.
If I want to start a data science project(not those memed shit) what should I study?
Matilda Wivinghall - Sun, 07 Apr 2019 23:50:25 EST wo8qr+K9 No.37743 Reply
section 6.1 looks dope! good find OP, god amongst men!
Archie Chuttingchotch - Thu, 11 Apr 2019 19:12:48 EST p18qherm No.37746 Reply
this is a hodge podge of resources, some of which might be valuable to the posters ITT (particularly in the Computer Science -> University Courses, and there's a collection of math lecture notesand other resources in Computer Science -> Theory -> Math.

It is not a structured curriculum though, but does contain a lot of resources for cherrypicking.
Betsy Drummershit - Fri, 12 Apr 2019 14:39:30 EST wo8qr+K9 No.37747 Reply
Hey OP, just out of curiosity, have you still personally consumed everything you recommend? The "intro programming" section has changed frequently since the list was first up, for example, and it makes me wonder if you read a lot of intro material frequently still (and if you do, why?)
Frederick Fessletag - Fri, 12 Apr 2019 23:01:22 EST wo8qr+K9 No.37748 Reply
serious question OP what's the scoop on non-traditional degrees in the US? can something like the Open Uni get my foot in the door at a local (I live in the Pacific Northwest, USA) uni for some post grad work? I like this theory stuff and working in it sound great, I'd like to go into math or CS but these are both heavily gatekept fields by academics and I doubt ol' Joe Schmoe can walk in off the street and work with the boys who paid a premium for their ticket.

I'm stuck trying to decide if I should go back to school and pay out the ass to take 'Intro Programming with Java (TM)' and Calculus II featuring James Stewart. Ideologically, I agree much more with not paying out the ass for a scam that reteaches what I've already learned (thought to be fair, I don't actually know Java), but I'm not sure what will have the most net gain long term.
Frederick Fessletag - Sat, 13 Apr 2019 17:28:18 EST wo8qr+K9 No.37749 Reply
OP, feel free to ignore this question and my other shitty ones of course, but do you believe in doing courses/textbooks/resources concurrently? or do you get more out of going monk-mode on a single resources?
Ian Blovingford - Sun, 14 Apr 2019 21:44:03 EST x6K3CZQk No.37752 Reply
Found a crazy MIT resource where they teach operating systems in the style of Lion's Commentary on Unix, the book that everybody passed around as illicit photocopies back in the day.
They recreated Kernighan's and Ritchie's ancient Unix v6 https://pdos.csail.mit.edu/6.828/2018/xv6.html for the purposes of teaching, as it's small enough to follow along the source with book.

I've done many more too, such as the Cornell book 'All of Programming' which covers C/C++ as an intro http://aop.cs.cornell.edu/ but I had to discard it due to highly proprietary format (can only buy from Google play store and read with annoying browser plugin). Otherwise if you're some kind of amateur game developer who just wants to manipulate engines and you want a really good intro to C/C++ that covers tools like editors and compiler errors it's prob the best practical intro book. I've also done MIT's python intro courses, CS50 from Harvard, Princeton's courses, numerous other books. It was mainly out of interest in creating my own curriculum but then I started following Matthias (Felleisen) and Shriram's papers on what actually works, like this study from Shriram: http://cs.brown.edu/%7Esk/Publications/Papers/Published/mfk-measur-effect-error-msg-novice-sigcse/ and came to the conclusion that all of the existing curriculum is essentially terrible, and CMU also came to the same conclusion around 2011 and Robert Harper completely redid their entire undergrad though he was forced to keep a bunch of legacy courses. I keep changing that section because I want a resource that is free/open, will not disappear, and something that compliments the rest of the material and PAPL is pretty much that book now that it's almost finished. For example this section: https://papl.cs.brown.edu/2018/Type_Inference.html on understanding type inference by building your own will cure the reader of any confusion on future compiler type checking errors in other courses. Studying how a language works makes it much easier to program. Plus PAPL also doesn't require any kind of local install, can all be done in the browser which to me makes sense if you want an introductory course, don't require your students to spend forever learning some complicated pile of language packages with missing dependencies or cryptic IDEs designed for professional industry programmers.

My own anecdote for teaching, which wouldn't scale of course, is that I believe programming should be taught from the top down, similar to The Art of Computer Programming series. You spend a few weeks learning how to solve recurrences like the opening chapter of Concrete Mathematics, progress to combinatorics/group permutations, basic linear algebra to manipulate arrays, automata theory, then how to represent data from a physical thing like a playing card to it's abstract representation in an information structure( Chapter 2, TAOCP), and then analyzing said structure on paper before you really even begin programming. Everything to me anyway is so much easier when you know basic design techniques like divide/conquer, dynamic programming, greedy algorithms, and network flow then you start seriously programming in language of choice. In most intro texts or school courses you generally start from the middle where nothing makes sense and they expect you to come up with algorithm design techniques yourself, which is where everybody drops out because it looks like this work is impossible to do and only a few people can understand it. In your 3rd year or so at university you move up to something like Algorithm Design by Kleinberg/Tardos, which probably should be taught first with pen and paper. For example this intern's report on how he dealt with the task of needing to modify 10k+ config files, using dynamic programming design strategy combined with A*search (typical general AI course algorithm) to find an acceptably efficient solution http://thume.ca/2017/06/17/tree-diffing/ I like the book 'Discrete Mathematics and Functional programming' for this too as a compromise between programming first yet learning the important theory parts at the same time instead of endlessly frustrating exercises a typical university intro course or book uses that teach a crippled Python curriculum.

Any online school that offers regional accreditation will be fine for applying to grad schools, if that's what you're asking, such as Open U in the UK which somehow has US regional accrediation. They're getting expensive now though. You generally have to put together a really good application and directly send it to a department member you want to supervise your degree, hoping to impress him/her enough they are willing to take a risk on you if the goal is PhD. There are actually people you can hire to help you write applications for this floating around but it's still very difficult to get in. If your goal is masters then all you need is money up front and good to go from what I've seen. I dislike school in general as I've never been to a really good one so another solution is just apply to work as an outside contractor to be a programmer on whatever grant funded research team. Then you get best of both worlds: paid to learn on a team with researchers in academia. Your local university will have these jobs for outside candidates since students never take them, they want resume prestige and money that come with internships at bigtech.

If you mean multiple subjects I generally just did one subject but from multiple resources of various difficulty, like how they assign you 3+ books for assigned reading per lecture sometimes I'd do 2-3 courses at the same time if they were the same subject (ie: Machine Learning). In a university you'd be doing 4+ totally different subjects all at the same time so much faster than how I did these courses but my background was utter shit when I started so I had to constantly mix different material together just to understand one introductory chapter.
Basil Worthingcocke - Wed, 17 Apr 2019 15:12:29 EST wo8qr+K9 No.37755 Reply

ayyy mang where can I get this for free? sounds dope. I don't wanna spend $10 to encourage some authors with their walled garden proprietary BS
Cyril Duckworth - Thu, 18 Apr 2019 08:43:48 EST Xu2x3Xtn No.37756 Reply
Is the functional programming part redundant if I have already finished the Common Lisp alt intro?
Edward Bruvingstock - Thu, 18 Apr 2019 12:47:36 EST x6K3CZQk No.37757 Reply
1555606056661.jpg -(37073B / 36.20KB, 350x500) Thumbnail displayed, click image for full size.
I had to buy a copy, as they made it as proprietary as possible in order to read unfortunately. It also comes with lecture videos if you buy it. One book you can try is Data Structures & Algorithm Analysis in C++ 4th Edition by Mark A. Weiss which covers greedy algorithms, dynamic programming, etc. http://iips.icci.edu.iq/images/exam/DataStructuresAndAlgorithmAnalysisInCpp_2014.pdf

Up to you to take whatever interests you, there's no reason to learn SML/OCaml if you like working in Lisp though looking at the module system in SML/OCaml is rewarding, most languages you just import some library to use and that's basically it, not very interesting ,but in ML family languages libraries are completely different and vastly more powerful. Kind of like OOP but not OOP. Guile(scheme) has something similar https://www.gnu.org/software/guile/manual/html_node/Modules.html#Modules and speaking of Common Lisp it is still heavily used in quantum computing research, for example Rigetti Computing hires Lisp developers https://github.com/rigetti and my meme list of courses there's a really good intro to Quantum Information Theory lecture series if you're interested though will take a lot of work to understand the randomized algorithms but it'll be worth it, since almost everything I do these days in optimization work is some trick with a randomized datastructure.

Something I'm going to add is this talk http://cr.yp.to/talks.html#2015.04.16 'The Death of Optimizing Compilers' by djb. There's audio + slides. I had no idea until I got into the industry just how much hand rolled optimization is going on. Anytime a hot spot is found we are writing by hand assembly for it and bypassing the compiler optimizations completely. In the book 'Coders at Work' (pic related) there is an interesting interview with Fran Allen about the shit state of current day optimization and how much compiler theory we still aren't using they left behind in the 1970s.
Nathaniel Cegglechack - Thu, 18 Apr 2019 20:26:22 EST wo8qr+K9 No.37760 Reply
Thanks for helping the little guys, OP. Anyway:

Do you store notes long term (and if so, how)?

Have you by chance taken CMUs 15-122, Intro to Imperative Computation? I am looking to read CS:APP soon and follow the accompanying course (15-213), so I wanted to make sure my C base is strong (so I can apply what I read), and it looks like it's a very solid intro to C.

>just apply to work as an outside contractor to be a programmer on whatever grant funded research team
That is a good idea, thanks. I'm not at that level of knowledge yet, but that sounds like a great balance between fulfulling work, and avoiding the downsides of working in academia, and having something to shoot for is always cool.

And if you have any general tips for resource gathering/curation I'd be interested in hearing it. It seems like you've forged a high quality resource and curation stream, and I'd like to mimic that ASAP.
Nathaniel Cegglechack - Thu, 18 Apr 2019 20:28:57 EST wo8qr+K9 No.37761 Reply
Oh, and I've been using Org-Mode for some time now, so if anyone has any tips for good workflows (esp for self-teaching related task management, note taking, etc), I'm in dire need of a better system.
Archie Sankinshit - Fri, 19 Apr 2019 04:07:55 EST x6K3CZQk No.37765 Reply
Yes I did, the lectures for 15-122 used to be open when Rob Simmons taught it and then they disappeared as they switched from panopto to some other proprietary video service. I also posted them so that could be why they disappeared but who knows. The lectures covered much more than the notes, he walked through contracts then would frequently find some way to violate the contract as a way to get the students to think less 'operationally' and more logically. The contract language used is loosely based on a tiny subset of JML and the same professor from that course has a tutorial on JML covering much of the same material he used to teach in 15-122 https://www.youtube.com/watch?v=lNITrPhl2_A but you really don't have to do this class, everything in it is covered elsewhere in the curriculum just CMU department heads felt they needed to prepare students for 15-213 as they were failing due to being unable to handle the annoying complexities of C like undefined behavior and surprise casts, so 15-122 was born. 15-213 is self contained and will pretty much teach you C as you go, including gdb and valgrind and other tools. Big-O introduction, is much better defined in the Parallel & Sequential algorithms book (used in 15-210) where they use a language based cost model of complexity to measure things like garbage collection and dispatching. I also liked the big-O explanation in the Waterloo Functional Datastructures book that talks about abuse of notation and clears up some things. https://cs.uwaterloo.ca/~plragde/flaneries/FDS/Tools_and_Techniques.html#%28part._.Order_notation_and_its_discontents%29 and elementary data structures like arrays are much better covered by the njwildberger videos on datastructures where he shows the Knuth method of thinking about them in linear algebra terms. Still I had never heard of contracts and liked rj simmons as a lecturer so did the course anyway. Probably the most important lecture notes in the entire course are the one's about temporarily violating and restoring invariants since it's a technique that comes up again in algorithms courses but you'll learn it from those courses/books anyway.

15-213 the Randall Bryant lectures are sometimes unintentionally hilarious, depending which semester you watch, with him accidentally teaching from totally screwed up slides or arguing with some student about which language came first. Apparently most CMU students just attend the lectures and don't read the book, however I found the chapter (not covered in the course) where they roll their own architecture really interesting since I know nothing about engineering. MIT and Cornell both use the book 'Computer Organization & Design: RISC-V edition' and MIT has a full course for it here with YouTube lectures if interested in transistor level details https://6004.mit.edu/web/spring19/resources/lectures for programming FPGAs https://github.com/darklife/darkriscv Also you will quite easily slay this NCC Group challenge after you finish chapter 3 https://microcorruption.com/login

Best way to get these resources yourself is just do that practical data science course from CMU, then open up jupyter notebooks and drop in some master list of uni domains https://github.com/Hipo/university-domains-list/blob/master/world_universities_and_domains.json then train to recognize a class page or just look for professor names. Google scholar let's you get lists of professors, subjects, citations ect. to cross reference your pile of data you scraped. Usually I find a paper I like then have my pile of shitty jupyter notebook scrape code retrieve everything it can find about the people who wrote it, searching university domains for their class pages. Then I present myself a list pushing the courses with youtube videos that are accessible to the top. For example I just did this and found a class starting here apparently about robot algorithms for walking/swimming http://underactuated.csail.mit.edu/Spring2019/ with live streaming youtube playlist https://www.youtube.com/channel/UChfUOAhz7ynELF-s_1LPpWg
Cedric Hoggleworth - Fri, 19 Apr 2019 11:02:05 EST Oxa3He0q No.37766 Reply
After finishing Practical Data Science which one should I do next for a rigorous treatment of the subject?
Archie Sankinshit - Fri, 19 Apr 2019 13:29:51 EST x6K3CZQk No.37767 Reply
Machine learning if you like that subject. For example we'll use fintech outfits. They primarily hire people to solve the seemingly impossible task of cleaning/scrubbing/indexing data, and by data I mean a non stop fire hose of unstructured data from 100+ different sources, all of it highly proprietary so you can't use a third party to process it. You need to build a custom data processing pipeline that can clean/index as it comes streaming in to discard invalid data, detect outliers, normalize etc. Outliers such as weird errors like data coming in declaring itself valid when it was timestamped after markets closed. Probably 90% of the work is just preparing and sorting this data and doing it in a way that is more efficient than everybody else, as most of the profits are derived from price discovery, which as I understand it as it was told to me, is finding inefficiencies in the market then correcting them, where you make all the money. So huge, high signal data comes in from all directions, is prepared for analysis (an enormous task omitted for brevity), advanced queries run on it and random sampling, then a Quant will come up with hypothesis to backtest their strategy, then that strategy is deployed. All of this is generally done in real time and if you are really good at cleaning and sorting data to be analyzed you will be poached by every fintech startup, everyday some new hedge fund will try and lure you away by very large promises of bonuses as there's only a handful of people that can build these data processing pipelines, most people specialize in other areas so this is one guaranteed way of earning income for yourself. Even if the entire finance sector melted literally every major business and even governments want a similar pipeline, because data is just out of control, there's so much of it right now and it's often proprietary, and you absolutely need your own people to work on these pipelines because the advantage lies in being the first to act . Caveat: I know nothing about actual finance, so I'm just recycling what Quants have told me, my experience is with the data pipeline architecture and randomized algorithms to extract more efficiency out of the research platform.

Of course, once you are really skilled in building these data pipelines that simply receive and prepare the data, and you've worked in the industry enough to network, you can if you want go into the business of selling this data yourself which is another reason why it's hard to find people. The people you hire quit and end up selling yet even more data that you now need to analyze. The math to accomplish this is just undergrad probability and stats. The CMU book I included about performance modelling of systems (queueing theory) came from the need to do stochastic analysis of resource allocation while building one of these pipelines. Applied machine learning at this level is definitely just undergrad math too.

Anyway enough of my shitposting my little sabbatical is over where I kind of slacked on learning some more randomized algorithm techniques, so should probably do that. Randomness is incredibly useful for developing very simple (as in under 10 lines of code) algorithms with provable performance guarantees. Whenever I'm done I'll dump everything I have on randomized algorithms and probability I've found.
Shit Punkinlock - Mon, 22 Apr 2019 08:53:04 EST Sh3Jt6P/ No.37774 Reply
OP you got any good resources for creative coding ? like uni-grade ?
Beatrice Blatherbury - Wed, 24 Apr 2019 01:26:18 EST 5KqiXgaB No.37780 Reply
Thanks a lot dude! Btw do you work at Jane Street H.K.? How hard was the interview there?
Matilda Haffingbury - Fri, 26 Apr 2019 00:22:03 EST wo8qr+K9 No.37787 Reply
Any recommended *free* C++ stuff? Ideally something suited for getting up and running with making games quickly. I don't want to do this professionally, but do want to roll up something akin to a Minecraft clone just for my own enjoyment.
Hedda Pebberbury - Tue, 14 May 2019 07:48:16 EST bmJib2vJ No.37840 Reply
Hey dudes what's your current progress? I'm grinding through the Common Lisp intro for almost 1 month, and its suprisingly quite hard near the end, especially recursion.

How about making a discord channel to check on each other's progress?
Phineas Shittingcocke - Wed, 15 May 2019 21:54:12 EST x6K3CZQk No.37843 Reply
I don't work there (yet), I had planned on it, but then was sidetracked. HK has over 200+ fintech startups per year or something many of them run by Frenchmen with PhDs for some reason, and OCaml is big in EU so ended up somewhere else. However from what I know from talking to people there about the interview strategy, essentially they want people who are beyond honest about their capabilities. So if you write on your application 'I know linear algebra' they will proceed to ask you the hardest linear algebra questions to test how honest you really are about your skills. So my advice is be as humblebrag as possible. This is because they have a unique situation where all of their income comes from looping tiny transactions over eleventy billion times a day, so if you make a mistake due to ego of thinking you know everything and not having somebody review your code, they're out a lot of money in minutes. Another thing that is unique to them is they don't have deadlines and pressure like a regular fintech outfit does. They have all the time in the world to rebuild things from the ground up which makes it a very interesting place to work if what you want is a job reinventing things and not freelancing/running your own shit. Most employees there don't do OT either. The first interview they will likely ask you some probability 'puzzle' questions to start just to see if you can do them, which means maybe you are now interviewing for a Quant developer position or even trading instead of software. Speaking of puzzles, they have one every month on their company blog. They also have a github of OCaml exercises you may want to try, plus the 99 OCaml problems based on Lisp 99 problems https://ocaml.org/learn/tutorials/99problems.html

tl;dr the interview process is not actually about skill but about communication. How does your thought process work when trying to solve a problem, can you ask questions to narrow the parameters, can you explain in plain english like Feynman used to explain quantum physics, do you use terminology without concretely knowing it's definition, etc. This is really all you need to know. The Cornell OCaml course, plus studying their Real World OCaml book, plus making stuff using their own open source libraries (see Increment) you're likely to get hired so long as you don't violate anything above like rushing to solve a whiteboard problem without talking about it with the interviewers so they can examine your problem solving process. Those Oregon Programming Language Summer School lectures will help too, and any kind of compiler theory.

It gets easier the more experience you have. I don't know how many times I absolutely did not understand an exercise and ended up on stack overflow, but then discovered that by simply writing out my question carefully I was able to come up with the answer myself before posting. Often that's all you need to do or just pass out and the next day magically you'll find you know the answer. You could also start writing your own software, Something really popular on WeChat I didn't know about is Sichu, which is Chinese private chefs working out of their house. They typically have a wechat page and you msg them for orders, they cook you up some spicy crab and deliver it. They're popular because restaurants are way too sweet, and often can't be trusted (toxic wonton for example). A lot of people also run illegal restaurants out of their house, taking reservations but they can't afford OpenTable bullshit. Write something that interfaces with WeChat in common lisp, so they can automate orders. Then sell it on Google Play/iOS or whatever Chinese app store. Sichu exists in all western cities too like 'Cloudlifedaily' account in Vancouver which lists over 60+ of them. Remember you can just embed a lisp interpreter in virtually anything.

My current status is working through Wildberger's 'Algebraic Topology' vids. I routinely am surprised by these lectures being able to do what is usally difficult things in mathematics only using arithmetic and basic algebra.
Priscilla Publingham - Thu, 16 May 2019 00:24:32 EST Q/0wZWf1 No.37844 Reply
Would they be willing to accept fresh grads from another country? I'm thinking of finishing up my undergrad, but follow your own curriculum because its much much more rigorous.

Also, do I need to learn Java to program in Android/ios? Or can I just port it through common lisp?
Phineas Shittingcocke - Thu, 16 May 2019 00:24:49 EST x6K3CZQk No.37845 Reply
Something I'm reviewing is Jeremy Kun's 'A Programmer's Introduction to Mathematics' https://pimbook.org/
Note it is a book about math, from a programmer's perspective (sort of). Though there is a little too much medium blogger/casual writing fluff in some of the intros to chapters, the rest of the book is pretty good
His advice:
>The most important cultural expectation, one every mathematician knows, is that the second you see a definition in a text you must immediately write down examples. Generous authors provide examples of genuinely new concepts, but an author is never obligated to do so. The unspoken rule is that the reader may not continue unless the reader understands what the definition is saying. That is, you aren’t expected to master the concept, most certainly not at the same speed you read it. But you should have some idea going forward of what the defined words refer to.

I kind of do this, modelling everything I come across in lectures with a tiny junk program of no use but to build myself an example to learn from. Common Lisp is great for these throwaway programs.
Phineas Shittingcocke - Thu, 16 May 2019 02:04:08 EST x6K3CZQk No.37846 Reply
I have no idea how employment visas work, for which country, so just apply anyway. For example maybe HK doesn't give a shit if you're from EU but if you have an Indian passport you have to produce piles of documentation proving why they could not find a local making it difficult to sponsor a visa, the rules change all the time and are complex. I suspect they just handwave these things away at the level of finance global corps though I didn't have any problems. US and UK I have no idea. Singapore is the easiest for visa sponsor I find.

>common lisp mobile programming
One I've used is parenscript https://common-lisp.net/project/parenscript/ via cordova https://cordova.apache.org/ for iOS (this is what Ocsigen(OCaml) uses). Use Zeit for free so-called serverless hosting of your parenscript made API on their node boxes. There are scheme implementations out there too like http://www.lambdanative.org/ it's used for writing hand held medical devices, so has sensor libraries, for use in the developing world. Mozilla is pushing wasm to be the new mobile 'app', so your browser is the new playstore and you just get a binary pushed to you through it that will soon have native access to system resources like a regular iOS/android app would. I have no idea the status of any lisp -> wasm project but web assembly is just a limited MVP right now anyway.
Shitting Winderman - Sat, 18 May 2019 04:03:11 EST afYdzNrx No.37853 Reply
Hey OP, I've read this thread and your curriculum, and didn't find any mention of Haskell.
What do you think about it? Is it worth learning? Have you tried it? If so, would you recommend some learning material?
Phineas Blythedale - Wed, 22 May 2019 14:28:04 EST e+24tp3r No.37857 Reply

>Is it worth learning?

Depends on what do you want to get out of it. It is certainly worth it if you want to learn some functional programming and it will look good on your CV. But don't expect to get a job that actually involves haskell... not saying they don't exist, so feel free to try, but they are very rare, keep that in mind.

To get more specific: Did you study CS and/or are a working developer? Then yeah, learn haskell (see reasons above). You are just starting your education? Nah, not worth it because there is more important stuff to learn first before you move on to haskell. But if you are so curious about haskell, start learning and stop if you feel like it and pick it up some time later again, there is nothing wrong with this approach too.

Not OP btw but someone who studied CS and I actually got a job working with a functional programming language as my main tool.
Charlotte Crubberstone - Thu, 23 May 2019 20:45:03 EST x6K3CZQk No.37860 Reply
I actually don't know anything about Haskell with exception from the appendix of 'Purely Functional Data Structures' book, where some of the algorithms are translated there (I did that book in OCaml, not the imaginary SML version it uses that doesn't exist). All I know is Haskell by default uses lazy evaluation, which means a lot of complexity in trying to reason about what you're writing. I also don't think the language matters, I personally use OCaml because of things like MirageOS, Coq (outputs OCaml), js_of_ocaml which is a voodoo library, you write something in OCaml and it just magically converts almost 100% to js (bucklescript optimizes for 'readability' in js output, js_of_ocaml is just straight translation), and because all those Oregon Programming Language Summer School lectures on theory can easily be translated to OCaml and I don't have to understand GHC. Finally the ML module system is just too rich and awesome to do without, again I don't know anything about Haskell but it doesn't seem you can have first class modules which is what I use for rapid prototyping.

So tl;dr do the entire curriculum in Haskell if you want, I did most of it in Common Lisp before I switched to OCaml. Jobs also get posted to Haskell Weekly and https://functional.works-hub.com/ or just make a post on HN monthly freelancer thread that you know Haskell and want work. Or of course just use it to make your own side gig look at Deal Dash website and translate that to Dope Dash. Sell the prototype to some licensed producer out of California.
Rebecca Hemblefat - Fri, 24 May 2019 00:29:17 EST uQdF/Qdw No.37861 Reply
How many months did it take for you to finish the whole ocaml course in the curriculum? I've been thinking of switching after finishing PAIP.
Rebecca Hemblefat - Fri, 24 May 2019 00:31:36 EST uQdF/Qdw No.37862 Reply
Also, is it a good idea to use Courant and Apostol after I finish the proofs part in DMFP?
Charlotte Crubberstone - Fri, 24 May 2019 12:43:19 EST x6K3CZQk No.37863 Reply
It's hard to guage time for the Cornell CS3110 course because when I took it I had already finished 15-150, and 15-210 (parallel algorithms book), and DMFP book, and a CMU course on automated program verification/bug catching using proof assistants, so most of it was review. It's probably one of the best courses though as it's designed to give you the abilities to learn any language. You can follow CS3110 with this book, which for me had very clear examples on how to do modern algorithm analysis pointing out ambiguities in math notation https://cs.uwaterloo.ca/~plragde/flaneries/FDS/ and is overall a really good yet small algorithms book that assumes little prior background.

>is it a good idea to use Courant and Apostol after I finish the proofs part in DMFP?
Sure if you want, but I'd recommend to try this first (it's on libgen) https://pimbook.org/ since you can already program. I used to read his grad school blog. Only reason I haven't included it is I haven't looked all the way through it, but it will teach you both Calculus and how to actually do math from what I've seen so far, such as writing yourself examples every time you come across a definition. The hardest part of Apostol for me was dealing with large messes of sin/cos/tan and their inverse functions which is why I ended up doing the whole thing because I was absolutely terrible at trig identities. Note Wildberger has an interesting rational trig system that can be easily modelled with your own libraries. Also, it turns out all the modeling I did, directly translates to quant finance strategy something that was unexpected. Later I'll dump some info here
Esther Crirringham - Fri, 24 May 2019 21:37:43 EST P7FCvqvg No.37864 Reply
I'd like to do the parallel algorithms course, but my math background is still quite shaky imo. Guess I'll practice for a while.
Caroline Lighthall - Tue, 28 May 2019 21:13:49 EST x6K3CZQk No.37866 Reply
You should consider working through Brown's CSCI 0190 then. Here is the lectures, get them before they disappear (can use firefox/chrome addon to grab video) it's an accelerated intro to CS focusing on analysis and data structures that assumes zero prior background, and covers 1 full year of intro CS: https://brown.hosted.panopto.com/Panopto/Pages/Sessions/List.aspx#folderID=%222559ad35-3fff-4ef1-a2ac-a951011eb91e%22

2 of the 36 lectures are kind of fucked up and audio only until half way through but otherwise these are great at explaining exactly how you write and analyze algorithms, and the syntax is basically an OCaml flavor of Python (Pyret) that's easy to use (it's basically just Racket/Scheme). It uses the (free) book PAPL https://papl.cs.brown.edu/2018/ and more importantly the professor and rest of Brown department has run numerous studies to measure the effectiveness of the course material, so it's not just anecdotes of 'This worked for me, you should try it' but actually proven to work to teach an understanding of algorithms and fundamentals of CS. There's some assignments for it and the PAPL book too is filled with assignments on every page http://cs.brown.edu/courses/csci0190/2018/assignments.html also if you finish PAPL, you've also done another course in interpreters/parsing, which is Brown 1730 IIRC. More importantly there's a great section in there on type inference, which directly translates to any future course where they try to explain how type inference works which usually takes 2-3 lectures but you will already know it.

For example O(n^2). Most people interpret this as a constant or unknown number (n) that's squared. This expression is actually a variable, that represents the function that maps n to n^2 which you will see in this course as he always uses the notation O[N -> n^2] to make it clear. I also think you can just program professionally after this course (cs 0190) it sort of covers everything, then you can just focus on whatever interests you, like complexity theory, distributed systems research, etc.
Caroline Lighthall - Tue, 28 May 2019 22:16:50 EST x6K3CZQk No.37868 Reply
1559096210329.jpg -(9478B / 9.26KB, 201x211) Thumbnail displayed, click image for full size.
Also by 'job' I mean passing those annoying codility tests or whiteboard interviews for most positions, the course even covers a bit of model-view-controller, btrees, DAGs (git is a DAG), etc.

In other news, the world of fintech for anybody who is interested what happens here. FPGAs are primarily used to sort through the massive data firehoses I talked about, where data comes in from about 100 different sources. FPGA's are faster at problems solved in parallel such as analysis on the 100s of real time data feeds then triggering a pre-defined buying or selling strategy that matches a particular pattern. These strategy's are all performed via modelling, and Quants despite what you've heard are mainly not PhDs, in fact the one's I work with are just Physics undergrads who are good at building models. This is covered here, it's essentially about finding inefficiencies and pricing them correctly: https://ieor.columbia.edu/files/seasdepts/file_attach/BoysGuide.pdf plus the same author has written books about modelling you may find interesting. The crown jewel of all these outfits is their research platform, where strategies can be backtracked over historical data. Should you some up with your own platform and strategy you will quickly find yourself with 7 figure job offers to stop what you're doing and join that fintech outfit. Of course this is also the most dangerous area to work in, because if you leave and work for somebody else it's very common to end up sued or even arrested for 'IP' theft, a famous Schooln programmer had this happen to him when he defected from Goldman Sachs. It's also dangerous in that you're handling billions of dollars per second.

The quants however are probably 10% of any fintech outfit with the rest of the programmers there writing client software (clients are all other billionaires or banks) and the bulk of those programmers are working on the data pipelines, writing and maintaining FPGAs, or just writing parallel programs to sort and verify data because there is just way too much of it, terrabytes per hour are coming in. The more investment a company does in this department the more successful they are (Rentech aka Rennaisance Technologies). Hours are surprisingly easy, you never work overtime unless you're a Quant trying to backtest your strategies all night but if you're a Quant you're trying to make millions in bonuses so you don't give a shit. If you're in the data pipeline manipulation department or client programming, you only ever work market hours and no overtime. There is also no deadlines, no panic, no releasing half tested software because of said deadlines. You also get a bonus depending where you work and the offer they give you, which you can expect to be 2x your salary if on the lowly data pipeline or sky is the limit if you're on the research platform or working on a quant team and translating matlab to algorithms. There is also no 'culture' meaning you do not have to live/work with everybody like some bay area cults, and can just clock out and takeoff once markets close. I was completely surprised by this expecting hours and hours of unpaid overtime but nope. The problems you have to solve are incredibly difficult, and largely unsolved. You can throw parallel FPGAs at these data firehoses but it's never enough and you're always looking to squeeze as much optimization as you can since the first to act on data wins the prize in fintech.

Note this is my anecdotes for 2 different fintech outfits, I've never worked for a bank or anything. The #1 thing I've noticed here is desperation to hire, as they get a lot of self-described financial experts but shitty programmers, so you may end up working beside somebody who has conned their way in like my current coworker, who was supposed to be my 'team lead' but I'm having him go through Brown's CS 190 as he doesn't appear to actually know anything and I have no idea how he got hired. Another thing I've noticed is owners are often absentee, so it's some billionaire's kid who's running the outfit from Europe or NY, and if you prove to be 30% competent and aren't trying to embezzle for yourself you get upped immediately to upper management which for me is hilarious, I honestly should be an intermediate developer at best, not running an entire branch by myself. Anyway I highly recommend fintech, nobody applies here except these wannabe Warren Buffet types.
Caroline Lighthall - Tue, 28 May 2019 22:42:52 EST x6K3CZQk No.37869 Reply
oops that should read many, many terabytes per hour, also I forgot to add, K. L. Chung's book on probability w/stochastic processes is sitting on every desk of the Quant's I talk to here, I haven't read it. Anyway no bump
Phyllis Poddlestock - Wed, 29 May 2019 01:21:21 EST 7Ms2u8sL No.37871 Reply
Does this full series also cover algorithms?
George Dushstock - Wed, 29 May 2019 01:51:01 EST n9sOXPqJ No.37872 Reply
Are there pros and cons to PAPL vs the Common Lisp intro books, or will I end up with roughly the same skillset from both?

Also are there any basic math (as in starting with precalc algebra) resources that aren't videos?
Caroline Lighthall - Wed, 29 May 2019 11:35:59 EST x6K3CZQk No.37873 Reply
PAPL/lecture vids for it shows you how to solve the most common recurrences, graph theory, dynamic programming, etc. All things you would expect in a terribad white board interview or phone screen filter or codility candidate filter. Sorting strategy algorithms are covered, but shown within the language ie: building sort algorithms using the built-in language features then reasoning and analyzing them. This is essentially exactly what you would do at any job for example consulting for toptal for side income. He also has a good teaching style, the lectures are always interesting and the book style doesn't let you passively read it.

Precalc algebra you could just watch the Wildberger 10 min videos if stuck on something while you work your way through Algebra by Gelfand (also on libgen) https://www.springer.com/gp/book/9780817636777 then Trigonometry by Gelfand, Functions and Graphs by Gelfand (Dover). These are very short but difficult books. I included the Wildberger videos because just in the first playlist, he walks through Binomial Coefficients (n choose k) which is in the first chapter of math prelims in Knuth's book, and most other university discrete math courses. Another example, starting at 5:26, here is the definition of Limits/epsilon notation that will be used in every future class https://youtu.be/K4eAyn-oK4M?t=326 in fact I can't think of a course I took which didn't use limit or epsilon notation.

The History of Math playlist https://www.youtube.com/playlist?list=PL34B589BE3014EAEB follows John Stillwell's book "Mathematics and Its History" I included this because it's like reading through TAOCP, Knuth is always referring to history, and telling the reader what the original mathematicians were trying to solve when they came up with some theorem. If you've never seen Differential Geometry this is a pretty good summary https://youtu.be/6xgtMQ7WSzQ and often I ended up using 'differential invariants' to prove correctness of programs with moving physical parts, and other modeling in later complexity courses. Same youtube channel there is an entire course on differential eq which you could follow along using Sussman's Functional Differential Geometry book that turns all these formulas into programs, just out of interest to learn quantum field theory or relativity if you wanted again another reason why I shoved it in there. I could also rant on and on how awesome doing linear algebra in the affine/projective plane is too (his other lectures) which is useful for learning more about quantum theory if you're interesting in Rigetti computing simulators or doing complexity theory of quantum algorithms. These just exist on paper, for now, or run on simulators but very interesting, like back when they wrote algorithms in the 1930s for architecture that didn't exist yet
Fuck Mellerwell - Wed, 29 May 2019 12:42:35 EST NK9xbfnB No.37874 Reply
How does PAPL compare to the ocaml course? Also, is Basic Mathematics by Serge Lang a good supplement to Gelfand?
Fuck Buzzman - Fri, 31 May 2019 16:32:24 EST x6K3CZQk No.37880 Reply
You can see the dependencies for the 3110 course here in this (confusing) chart https://www.cs.cornell.edu/sites/default/files/shared/Undergrad/csugradcourseprerequisites.pdf
Basically it's expected you've already done CS 1110, a python intro, and everything here: http://www.cs.cornell.edu/courses/JavaAndDS/ in CS2110 so a full year of undergrad which is exactly what PAPL is, two semesters of intro compsci. Of course it is possible to have done none of those things and take 3110 but it will be very slow going, but possible. The difference between the two you can just read the syllabus http://www.cs.cornell.edu/courses/cs3110/2019sp/syllabus.html but essentially PAPL gives you the high level overview and drills it with practice so you can effortlessly tell somebody how to do basic analysis on a program, how programming languages are built, etc. 3110 you are now using a real 'industry' language to implement real things and doing real analysis, but they won't spend much time explaining it expecting you to already have this high level intuition of what's going on. There's no reason to do 3110 either, only if you're interested in that style of programming which for me paid off because you can do some crazy shit in OCaml like dicking around with OCsigen, a framework to generate html or js_of_ocaml, it takes compiled OCaml programs and automatically translates to JS like magic. Things like this interest me but might not be interesting to you so don't take 3110 if you don't want to, you could always finish PAPL and just pick language of choice after to start professionally programming, building your own software. You could definitely slay those codility tests or whiteboard interviews after PAPL.

I removed Basic Math by Lang because errata galore, and hard to find a decent copy that's not a badly scanned pdf, but you can try it if you think your background is weak. Gelfand is much shorter, so would be faster to work through. There's much more answers for Gelfand's books around too on math stackexchange.

I still think the best way to learn is just to plod your way through any first year Calculus book, solving all the exercises. When you get to something you've never seen like weird function notation or trig identities, ie something else a precalc course would cover, I'd just look that up directly in Axler's Precalculus or even wikipedia. The reasons for my belief in doing math this way is because it's proven if you figure out something for yourself, you'll never forget it. When I first worked through all those excessive trig identity exercises in Apostol's Calculus, I had forgotten large amounts of trig and had to research it myself to solve the problems. At first the took forever, because I was always looking up prereq material, but then half way through book I had done so many exercises everything I forgot from precalc was filled in. Most universities design their Calc I course for exactly this reason, they assume your background is weak and will now fix your deficiencies in prep for later courses. Dover has a alot of good cheap calc books or just libgen.io download a massive George Simmons, Thomas or Stewart 'early transcendentals' type calc book and do the exercises until you no longer have to look up precalc to solve an exercise.
Edward Pockway - Wed, 05 Jun 2019 00:34:02 EST aHsAt7lv No.37881 Reply
should i still do papl even if I finished htdp and a gentle introduction to common lisp?
Nicholas Hellygold - Wed, 05 Jun 2019 12:59:30 EST x6K3CZQk No.37882 Reply
Sure, PAPL expects you to have already done some HtDP, here's the author comparing the two: https://news.ycombinator.com/item?id=8751465

You could also try the course for PAPL before it disappears, it has pretty good lectures. For example this lecture, skip to 13min in: https://brown.hosted.panopto.com/Panopto/Pages/Viewer.aspx?id=fc8a2ebf-ecde-4147-a8cb-a9910126b0b6

He describes the paradox of trying to prove that two functions are the same (ie: undecidability). You'd also learn this in the complexity theory courses but it's interesting to see how he sets up these things for freshmen students which basically have your background, all these Brown students would've taken highschool compsci and read some HtDP as chapter's out of HtDP are assigned as a placement exam before the course. The assignments are incredibly difficult unless you think through them which is the point of the course that real world difficult problems require being able to model them. For example the first assignment wants you to reimplement word2vec a famous NLP modelling strategy http://cs.brown.edu/courses/csci0190/2018/docdiffdocdiff.html but it turns out to be surprisingly straight forward once you think for yourself how you're going to go about converting words to vectors, and look up on Wikipedia how to multiply two vectors.
Fanny Henderford - Thu, 06 Jun 2019 02:03:09 EST diVnmzD1 No.37883 Reply
How would I fare against those who learned imperative programming in data structures and algorithms?
Albert Chankinken - Sat, 08 Jun 2019 03:05:25 EST x6K3CZQk No.37884 Reply
The material almost always shows both implementations, especially the CMU parallel algorithms book it shows you a typical, built-in sequential imperative algorithm in any language core library, then walks through which parts of these common built-ins are ripe for exploitation of multicore work processing. You still wouldn't rewrite the built-ins though, you'd just write a custom staging algorithm that better prepared the data for the built-in libraries, since now you know how to exploit them.

I'm currently still slowly auditing the Brown cs 019 course (if the lectures disappear I'll upload them to peertube) and I'm pretty sure this is the best course I've ever found for introductory CS. The language DSL is dead simple and maps directly to OCaml, and these assignments are pretty clever as they are difficult enough that you can't easily do them without having to think how you're going to architect everything and write examples, and at the same time are directly relevant to industry such as dealing with impossible to work with data, automated testing, finding invariants. He also has them rewriting almost all the built-in functions as drill practice. There probably should be more courses where you rewrite standard library things just to learn. A good example is the 3rd party Base library (if you already know some OCaml, or Pyret from PAPL) just because it's documented so well https://github.com/janestreet/base/blob/master/src/binary_search.ml
Alice Firrycocke - Sat, 08 Jun 2019 04:09:08 EST 6UJz7xj/ No.37885 Reply
I'll try to keep up with the course sequence. I've found it easier to think functionally rather than imperatively tbh.
My shit university is forcing us to learn Java garbage as part of the curriculum, and honestly it's unsatisfactory.
James Worthingwill - Tue, 11 Jun 2019 05:47:07 EST sWlaHijb No.37889 Reply
The examplar for the assignments in PAPL ain't working
Phyllis Fuckingforth - Thu, 13 Jun 2019 14:05:42 EST FF05ZpvR No.37893 Reply
OP you mention making freelancing. What would you suggest to learn in order to start making money a few month from now?
Edward Lightstock - Thu, 13 Jun 2019 20:34:33 EST x6K3CZQk No.37894 Reply
Indeed we don't have access to the wheats/chaffs testing thing but through the assignments you end up writing entire programs just to test anyway. The main thing I like about this course is the assignments, if you do them as asked. You can actually find some answers to the assignments if you check the github issues for Pyret where students claimed to have found a bug while working on one of the assignments, but notice they violated all the rules of not using a certain library so likely failed.

Learn a framework: Shopify, Wordpress, or (harder) React and freelance on craigslist or upwork until you qualify to get into TopTal. React will be much harder to do in just a few months, but possible. Shopify is probably the easiest and there are always Shopify gigs around or support gigs for some Shopify plugin you can do on the side. Salesforce is another actually high paying, freelance gig but hard to find material for it, though if you took the database courses they cover in-memory dbms, which means you can work on and understand SAP HANA of which there are countless freelance positions for.

I tried one of the remote universities and they forced me into 2 years of Java courses before I gave up. I get why people use Java but I too hated using it. js_of_ocaml is probably a secret weapon, there's just a ton of things you can build with it. Reason/Bucklescript outputs 'readable' javascript, but js-of-ocaml simply compiles from OCaml bytecode so you can just basically 'export' pure OCaml straight to js (except for a few caveats). Jane street has their incremental demo you can also play with, perfect if you wanted a live trading memecoin bot with a 'desktop' to show all trades going on without lagging out.
Sidney Bapperkot - Fri, 14 Jun 2019 06:42:15 EST f+HHr8JR No.37895 Reply
Would a third-worlder like me be able to compete with someone from the international market using freelancing? Do you recommend learning Ocaml/ReasonML before those frameworks?
Ebenezer Blackfoot - Fri, 14 Jun 2019 07:33:11 EST HNGhXyui No.37896 Reply
You site seems to focus mostly on courses. Why is that so?

Can you learn everything on there just from books?
Polly Fammleham - Sun, 16 Jun 2019 20:33:53 EST x6K3CZQk No.37897 Reply
I prefer doing everything in OCaml/ReasonML as a single freelancer, just because it was much easier to learn than complicated frameworks, it's much easier to write and maintain MVP style software by yourself, and it's also much easier to add features to said MVP when people start buying it. By freelancing I mean building things you're going to sell or lease to others as a product owner, not working for somebody on salary/hourly though if you wanted, you can definitely work on TopTal as a ReasonML consultant too (though as a "third-worlder" they will try and screw you with region based rates). Most of TopTal when I was on it was people from ex soviet republics or south america you should have no problem getting in there.

The Cornell course will teach you the Lwt monad for example http://www.cs.cornell.edu/courses/cs3110/2019sp/textbook/ads/promises.html which the Ocsigen framework uses, so can build websites, mobile apps or APIs that can be compiled as a native binary. Or there's ReasonML if you wanted to write NodeJS APIs, or Reason-React if you wanted to write using the React library ecosystem. Being just me and not an entire team of people I prefer to write once, have a compiler confirm I didn't make any obvious mistakes, and export everywhere for simple business logic things or for crazy experimental hackery. But this is just my preference you don't have to do any of these things. You could instead learn some .NET framework and spend all your education time on learning complexity theory if you wanted.

Because guided instruction , just reading a book you can easily get lost in extra material as most university assigned textbooks are also references, so will include numerous things that may already be out of date or just simply not required to know at that point in your education, and it's helpful to have a course guide you through a massive reference book like The Nature of Computation instead of getting bogged down spending weeks on a chapter that you didn't have to immediately read unless you were involved specifically with said subject (like the XMM floating point register chapters in CS:App, it's covered in the lectures in less than 2 minutes). Courses have better exercises too, a lot of books have shit exercises like pretty much all publisher global editions (exercises rewritten and terrible) or even Apostol some of the chapters he has nothing to say more about the subject, so will just have you doing random calculating which is great if you need the practice but if you thought you'd understand the chapter subject better by spending a few hours doing those exercises you're screwed. Some of the lecturers are quite good too, like Ryan O'Donnell is an active CS theory researcher so always has something to add to each topic on whatever research is going on, and common pitfalls he's seen grad students fall into to avoid that aren't contained in any books.
Isabella Gadgebog - Wed, 10 Jul 2019 15:42:25 EST ob7f5uxa No.37910 Reply
I have a computer science degree already and I'm struggling with the PAPL course... kinda depressing
Phyllis Dinnertat - Wed, 10 Jul 2019 18:50:34 EST x6K3CZQk No.37911 Reply
Well it is an 'accelerated' course that covers 1 entire year in just one semester, so will be difficult at first but will become much easier the more lectures you watch. Some of the beginning assignments took me a few days to finish (Nile assignment) where I had to think in my spare time how to complete it with their requirements. Here is my very hideous first draft implementation of the first assignment (DocDiff) where you convert strings to vectors and calculate the dot product: https://code.pyret.org/editor#share=1vTO382t2gzfzC-GLlYwrwgZa6cE4Fyyu&v=01bb5ff (this violates numerous requirements: no design template, using library list functions, no comments, etc). It's done in REPL style so incrementally I wrote simple statements, tested the output and then wrote some more ignoring the design recipe. In the final version of DocDiff I wrote my own append and member library types and functions(as per requirements), added many more tests, added actual documentation, wrote the design template based on the type variant for docdiff 'vector' I made, and was able to remove about 70% of the junk in 'fun overlap' to be reusable anonymous helper functions since you'll notice at least 3 statements there are repeating themselves.

I believe in the second or third lecture, he reminds the class that they're supposed to follow the requirements of the course, and claims if you come to office hours and you're struggling it's because your strategy has failed you so try their strategy instead. So I did try his strategy for future assignments, which differs slightly from HtDP. You start every assignment with a draft datatype definition, which is what I do everyday at work actually. Then follow it with test cases, which often lead to changing the variants in the datatype to account for those cases. Of course you write the tests in HtDP style so not just producing an answer but how you imagine the answer will be found, so if the test is squaring a number, you want your test to be 'square(8) is 8 * 8' instead of just using 64 as your test case answer, the whole point being it helps you write that function by thinking through the logic (n * n). Then from the datatype you've just created, you can see how to write the draft design template to implement it, should the type refer to itself you'll need a recursive template, etc. The lectures barely mention design recipes but they are directly lifted from a few HtDP chapters noted here: http://cs.brown.edu/courses/csci0190/2019/placement-readings.html

There's also some labs from prev years I didn't post I don't think: http://cs.brown.edu/courses/csci0190/2016/assignments.html also check 2017 for part 2 Big-O lab. If you're wondering how some students are able to answer questions in class, it's because they check Piazza, which is a kind of message forum-like software, where the professor will assign the next lecture's reading so they've already seen say, how a stream is implemented before he talks about it in the lecture. Anyway by the end of the course it gets much easier, you're just doing normal developer stuff like writing interfaces, and improving small programs via memoization, dynamic programming and other common optimizations which are really well explained by him in the lectures if you've forgot these topics or were taught incorrectly.

I'm trying to get the most recent lectures for the last 1/4 of PAPL, which are a different course though there are Racket lectures for it available
Eugene Denderford - Wed, 10 Jul 2019 22:28:42 EST x6K3CZQk No.37912 Reply
Note, I did all the assignments on a phone, which turned out to be quite easy to do esp with the default chrome browser which something like 2.3 billion people use everyday. One thing I've always been looking for is a hand held complete intro curriculum and this definitely is one
Phoebe Blinnershit - Thu, 11 Jul 2019 03:08:52 EST lM0Wpia2 No.37913 Reply
What Java resource to use if my uni is forcing us to learn this Java crap?
I'm planning to do this with the SML functional course since it looks neat.
Barnaby Gapperford - Fri, 12 Jul 2019 23:21:16 EST x6K3CZQk No.37915 Reply
1562988076197.png -(95966B / 93.72KB, 640x480) Thumbnail displayed, click image for full size.
I feel your pain as I also was forced 2+ years of Javaschooling
The best Java resource is likely Cornell's https://www.cs.cornell.edu/courses/cs2110/2017fa/online/index.html if you click on the stupid icons it leads to short youtube lectures.

I added the 'future of networking' network programming lecture crash course from a 2018 OPLSS video series https://www.cs.uoregon.edu/research/summerschool/summer16/curriculum.php done in 'Frenetic-OCaml'. Everything you need to know about modern networks, is in those 4 lectures. As a result I'm going to nuke every other network resource because honestly they're outdated, everything is a massive server farm these days and using an OCaml DSL to split up your network into modules and prove one part of the network cannot talk to the other part is the future instead of leaky VLANs and junky hardware running proprietary sequential algorithms the NSA can break into.

This 'curriculum' is now almost complete, except I still haven't found a very good probability resource (outside of the discrete probability notes by Ryan O'Donnel), and the proprietary book on qeueing theory I had to read, so I can hopefully save potential future students hours of bullshit like I had to go through to grok the subject.

PAPL -> Cornell OCaml course/CMU SML course, -> Persistent 'parallel' data structures -> Compilers -> AI/probability -> creating your own language to take advantage of these properties. If you want a spark to get into these things I highly suggest the Oregon Programming Language Summer School grad tutorials, esp the Robert Harper lectures to just see a premiere computer scientist who can lecture on cruise control without any notes about his field and explain to you how to properly implement your own language. Imagine that's you up there, able to describe finite details of your field to an audience over a week of lectures without needing any kind of notes. It's completely possible if you do these resources and then scheme your way into a grad program should you be interested.

Of course a major hole in said curriculum is web development, because generally I hate doing it, but we need money right to keep the lights on so if you need to cash in your expertise then React.js follows smoothly from PAPL(or CS3110) -> React. Then go pimp yourself on turtle.ai like i used to do, or toptal or gigster other curated freelancer platform scheme. If you don't need to do any of these things, then watch that lecture on youtube by Jane Street for their Incremental dom web app framework. Very easy to create incredibly abstract web apps with sockets if you already know basic OCaml provided you can go on google scholar and look up papers on CSS, or read Egor Homakov's medium articles on authentication pitfalls, or even Latacora's blog (tptacek of HN fame) on what to use for your authentication scheme (scrypt) or dsacco's comments on HN if you're further interested in finance or security.

Sometime I'll upload everything to peertube as well, I have all the lectures, including the deleted CMU AI ones.
Wesley Gemblehall - Wed, 17 Jul 2019 07:42:47 EST E/kAXTw/ No.37917 Reply
Thanks so much for doing this. Will be working through this the next few years. Maybe I can turn my shitty life around.

Here is a pretty good resource for react if anybody needs a hustle https://fullstackopen.com/
Molly Serrymid - Thu, 18 Jul 2019 00:08:37 EST x6K3CZQk No.37918 Reply
The next update I'm going to make my own seperate math preliminaries site because I believe I underestimated the foundations that slogging through Apostol's Calculus gave me, without it I likely would not have ever truly understood big-O or how to truly analyze a program, none of the linear algebra courses, none of the abstract algebra courses, and would have never really figured out how prove something with confidence the proof is correct. I think now looking back, the only way I really learned to prove something was seeing Apostol do it a few hundred times (Wildberger does a bunch of good proofs too, but you really need to go through a large book). My math was beyond shit at the time, you can tell in my example of the Concrete Math notes, I wrote that before doing Apostol like Grade 10 dropout level math. Even after Concrete Math I had a good idea of big-O just being a fudge-factor but until I did Apostol I never truly understood it.

I also take for granted my style of learning by writing my own 'book' to go with whatever it is I'm trying to learn. When you write the same rules of a field over and over or how a transcendental function works 50 or 60 times you just memorize these things and future courses, you can often skip half the book which will be introduction and review which is how I did these resources so fast, it was all because of Apostol and his really tedious exercises. The new math prelim site will have these lectures and notes from 1970: https://ocw.mit.edu/resources/res-18-006-calculus-revisited-single-variable-calculus-fall-2010/ which were based of Thomas' Calculus (Knuth's old college text) and it doesn't assume any background, because math background then was even more shit than now. For example the first lecture where he doesn't even assume you know 0/0 is 'undefined' and shows you a few paradoxes related to 'calculus is the study of 0 over 0". The very high res notes included cover highschool trig as well, and are unlikely to disappear like everything else I've linked to that after a few months just vanishes from the timeline. Anyway long post short, my advice is stick with it and 'refuse not to know' a resource, do it just a little bit every day, and eventually you'll just get it and from then on it's smooth sailing. Remember university students have TAs to walk them through all these things we don't.
Betsy Sedgeforth - Sun, 21 Jul 2019 14:27:30 EST ZqEwk2Rb No.37921 Reply

"ArsDigita University (ADU) was a one-year, intensive post-baccalaureate program in Computer Science based on the undergraduate course of study at the Massachusetts Institute of Technology (MIT). It was financed and supported by the ArsDigita Foundation, a non-profit organization begun by ArsDigita Corporation.[1] The majority of the instructors were professors from MIT and the program was tuition free.

After running from September 2000 through July 2001, seeing the first class to graduation, the dissolution of the ArsDigita Foundation forced the program to shut down. Most of the course lectures were videotaped. The tapes and other course materials are available free under the Open Content License from aduni.org, a website maintained by the alumni of the university. That site exists to carry on the school's mission of supplying free education, and streams ~150GB/month of lectures to thousands of people around the world. A 4-DVD set containing the videos and course materials (problem sets, exams, solution sets, and course notes) is also available for a fee. The tapes were made available on Google Video in 2008 allowing easier and more flexible access. "

Shit Pickbanks - Tue, 23 Jul 2019 12:32:20 EST Bhx3yagb No.37922 Reply
Glad to hear you feel the same way about the math foundations - I was bummed when you stopped endorsing Spivak's Calculus.

I'd be very interested to hear more about your style of learning though! I use Org-Mode and kind of do something similar,, but I'm probably not as fast (hopefully one day I will be).
Fuck Gannerman - Wed, 24 Jul 2019 21:23:10 EST x6K3CZQk No.37923 Reply
Sadly they used that hated proprietary real media codec I remember so well from the early 2000s so requires extensive jerryrigging today to get these to play, the concrete math lectures look interesting though.

The complete replacement will take a while to finish, but it will work up to doing this book and it's multivariable sequel: http://www.math.iitb.ac.in/~srg/acicara/ which combines calculus and classical analysis into one unified treatment so everything actually makes sense, and assumes no background in trig, and assumes only highschool algebra with some 'proof maturity' which a few chapters out of Daniel J. Velleman's book covers and even some 'intermediate' algebra books. I'm just going to make it an entire second site that starts at absolute basics and works up to completing the two volumes, with the help of some AoPS online books on number theory and basic algebra, some various short lectures and all of if can be had via libgen.io, with Wildberger rational geometry thrown in since you don't need non algebraic, transcendental functions like sin(x) until you get to the Calculus book and they build it from scratch anyway, assuming no background. The difference is I do the book with the reader in a 'solutions guide' that explains what is happening, walks through definitions with custom examples, etc., in hopes they write their own guide, then we have competing guides for these things and people won't just look at an undergraduate book and give up, thinking they need years and years of prep to complete it when really you likely can complete it just need to backfill things as you go. At least this is the theory anyway, it'll probably take a long time so who knows when I'll finish, since I can only do it P/T.
Priscilla Brenderway - Thu, 25 Jul 2019 00:40:06 EST Bhx3yagb No.37924 Reply
nice anon, you're really going for it. Glad to hear it. I really like your teaching/learning style, and I'm really looking forward to all of this.
Fuck Gannerman - Thu, 25 Jul 2019 10:28:17 EST x6K3CZQk No.37925 Reply
Anybody interested in web development, MIT has a crash course with youtube lectures http://weblab.mit.edu/schedule/ though the 2019 lectures were filmed terribly, so try the 2018 playlist https://www.youtube.com/channel/UCS2pbR9gJpaT6HIcQNT2QQQ/playlists

Unfortunately a lot of these web dev classes get corporate shills in there to hype their products and teach the class for some of the lectures, no doubt so they can collect resumes of the students for internships. I still do these things in OCaml, with Reason-React if I'm freelancing on one of those so-called vetted freelancer sites like turtle.ai or use increment dom from janestreet w/ js_of_ocaml if it's something I'm making myself. Ahrefs in Singapore will hire you remote to do ReasonML or OCaml too if anybody is nterested, or you could move there, the visa process is simple.

In more detail, it starts with basic counting, proving some laws of addition, proving laws of subtraction, proving laws of division etc. because proofs of these things in the Integers or Naturals/Rationals are much easier than having to do so in the Reals. Working in different bases than base10 to understand that abstraction (those AOPS books all do this). Each level from Nat->Int->Rational is distinctly noted, so you know what field or ring you're working with. Then the Calculus and Analysis books are the introduction to the Reals and then proving objects there which are completely different, like trig functions or complex algorithms that spit out infinite decimals that are just represented as a single symbol, things that aren't numbers but instead these higher order 'programs'. If you understand how they work, manipulating them becomes easier imho.

In the books limits are explained through classical analysis instead of confusing objects like they usually are in most Calculus books. Then you prove the Reals, so have proofs starting from the very basic Nats to the top of the 'math abstraction chain'. Kind of like The Art of Programming books where Knuth defends his use of an obscure lower level language because knowing how it works at the bottom makes learning all the higher level stuff much easier, you can dig into it's library and see what it's really doing whenever a mistake happens much like you can dig into Euler 'algorithms' to understand what they are doing when some book drops them as a single symbol to be the input into some other symbol. Terry Tao's book is like this too, but it expects you already know 3 semesters of Calculus when there's no reason both these subjects can't be taught at the same time.
jjjj - Thu, 25 Jul 2019 15:40:56 EST fKgP7HUI No.37926 Reply

Before coming across your site, I was inspired by Scott H.’s MIT curriculum ( https://www.scotthyoung.com/blog/myprojects/mit-challenge-2/ ) and completed 18.01, 18.02, 18.03, 8.02 and 6.002 (single +multivar calc, diff eq, E&M, analog & digital circuits), and Berkeley’s CS61b data structures (kudos to Prof Hug, thank you so much for publishing your lectures and gradescope despite the UCB lawsuit). Now I’m doing 15-213 (computer systems) and linear algebra (that brown course + 18.06 from MIT + 10 various libgen books).

I’m halfway through 15-213 and I have to say it’s probably been one of my favourite classes. Randal and that other guy are great instructors, and the assignments like attack lab finally gave me an understanding of all the stuff you’ve been reading about forever in the iOS jailbreaking community. Highly highly recommend.

Now I need some advice. My upcoming semester will mostly consist of shit I’ve already learned on my own so I’ll have plenty of time. I’m a rising junior in EU, and I want to maximize my chances for landing a summer 2020 internship. Thoughts on these classes?

I’m really bummed about that algorithm class from CMU being paywalled. I definitely want to be able to cook up algorithms without memorization.

As somebody earlier had mentioned, we should create a discord so we can share more stuff without it blowing up on HN and consequently causing profs to paywall their shit.
I’ll take the step and create one. We’ll see what happens. Would love to discuss various classes and experience w/ them.


I’ll try to be as active as I can, so join and introduce yourself.
Priscilla Brenderway - Thu, 25 Jul 2019 16:25:10 EST Bhx3yagb No.37930 Reply
MOOC nerds unite!

thoughts on irc instead of discord?
Lydia Fangertan - Fri, 26 Jul 2019 22:54:46 EST x6K3CZQk No.37932 Reply
I took studying advice from that guy too, some of it worked, though I find his site way too spammy, for example the entire front page is filled with clickbait, and shameless 'preorder' selling of vapor books. I understand the hustle of self promotion and can forgive the most egregious self-shilling but preorder cancer and clickbait is unforgivable, especially when he should know better since he did actually take those MIT classes and learn statistical analysis. I think what happened is I took too many statistics courses so then my thinking changed, I'm no longer convinced what worked for me will work for everybody else so I try not to promote my specific methods as hard as I used to, and I promote proven results, which is why now my little meme list is filled with Shriram Krishnamurthi, NJ Wildberger material and the guy who wrote 'Infinite Descent , an introduction to pure mathematics' because they all promote evidenced based teaching. This is of course the consequence of taking these courses, you start to question every claim somebody makes without proof.

For example this is a hard pill to swallow for all math students: https://infinitedescent.xyz/20180214-exercises-ibl/ but it's proven to work, and it's how I learned. The courses I took for the most part didn't have any solutions, so what I did after proving something is I asked somebody: is this correct, after trying to prove it was correct myself. Turns out, just formulating the question helps you learn more than looking up an answer, which can be completely different in the world of proofs. Usually what you do in an upper level undergrad math text is you look at the example proofs, and then from their example, try the exercises using the same methods, and usually this will work but sometimes it won't, and you need to ask somebody. So I whole heartedly endorse your discord channel if the goal is to ask 'is this pile of logic I wrote illogical' and then get advice to fix the proof. To me this is the great feature of stack exchange, access to mathematicians because nobody checks email I've found, and I don't blame them because they're active professors who probably get hundreds per day.

As for your specific question, I would not underestimate your upcoming semester and I would use the time to do a lot of supplementary difficult problems out of whatever material they're working from, in other words I would try to prove everything in their course and stay within the confines of the course, not seek extra material, but rely on their expertise to 'level up'. Hell I would TA if you already know it, explaining these concepts to somebody helps you 'level up' as well. You get some nice recommendation letters if you do this, meaning very expensive grad school completely paid for via grant potential. You can also hustle invites to special programs by TA'ing, like the Oregon Programming Language Summer School is all based on professor recommendation, I would absolutely get into that and then hang out with the top people in that field (if you're interested) who will in turn, encourage you to be their PhD students and furnish approval.

The 6.042 class is pretty good, I liked the lectures from 2010 on induction and the hilarious possibly apocraphyl story about the Pythagorean sect throwing some guy over the boat to kill him because he exposed root 2 was irrational after they tried to cover it up and pretend irrationals didn't exist. Personally I think you should combine the CMU 15-251 course with it, because they cover much more material, so 6.042 as the primary course, doing all the exercises they assign but then dipping into 15-251 to learn Godel's incompleteness theorems, some of the crazy Turing theorems on the halting problem, or their complexity theory lectures, since both the guy's doing the 15-251 lectures are active in complexity theory research and are a goldmine of information. The competitive programming classes are interesting but keep in mind they do physical competitions, not the online ones, which are trash. For me competitive programming is going on a freelancer site and grabbing every single contract then banging out an elaborate hack, calling it a MVP and collecting all the money. I'm not interested in capture the flag or anything else, unless of course I was on a physical team, which all the CMU students are. The Topcoder competitive programming environment is filled with bugs and the rest have numerous other problems, like Kaggle. But if your school sponsors or you want to create a physical competitive programming team (you should) to show up to one of the real events, you should definitely do it w/the CMU material they usually win or come in 2nd IIRC.

Algorithms nobody will like my answer, since The Art of Computer Programming, esp 4A, Combinatorial Algorithms (finite, discrete math that's easy to reason about), and the slightly unapproachable, depending on your background, Kozen's Design and Analysis of Algorithms, and the CMU book on parallel algorithms, is how I learned. Both require extensive prereqs except the CMU book, which you could try (the 15-210 book). You don't really have to understand the ridiculous analysis and just be able to pinpoint areas of some program where you can split the work up and learn about span, which are both easy concepts anybody can learn. Unfortunatley TAOCP 4a generally req that you know the first volume as well, so is totally inaccessible but somebody wanting to just jump in the parallel and sequential 15-210 book is possible to figure out and I use the methods from there all the time. The Kozen methods I've only used a few times, when I had to be sure what I made was better than the original, which required a lot of careful analysis and he spells out what to do but it wasn't easy, I have much more respect for the people who do this full time. Although TAOCP gave me what I can call a solid background to understand what was going on, I've only ever used it specifically in practice when we programmed a series of RISC-V chips for a data pipeline, which I've since replaced by watching the OPLSS (Oregon Programming Language Summer School) lectures on network programming where he showed how to build your own DSL to split a network and manipulate it. Where I am we decided it was better to work more securely isolating things than working as fast as possible but if you're someplace where as fast as possible is primary then Knuth plus RISC-V you probably can't go wrong. My understanding of RISC-V is just introductory too from that MIT course/book, and looking at the documentation, I'm not an engineer, and I"m not involved in HPC so take my advice with a grain of salt.
Phyllis Criffingville - Tue, 30 Jul 2019 01:53:03 EST Qo15bdSs No.37938 Reply
> I try not to promote my specific methods as hard as I used to,
well shit

I popped by to ask you what your org mode workflow is like for studying or ""deep work"", would you mind sharing some personal anecdotes on that? I didn't see anything in the new sections about this, and I know it's kinda niche. I've got a lot of time right now so I'm trying to leverage that and squeeze as much as possible out of big days, and this can lead to big piles of tasks and notes that need organizing, plus convenient searching and presenting (which org-mode provides a lot of flexibility for).
Phyllis Criffingville - Tue, 30 Jul 2019 01:55:23 EST Qo15bdSs No.37939 Reply
also, fwiw, I was really fond of the highly specific and personal methods, but I understand why you'd remove this from the cirriculum. I found your style really jived with my own experiences. I also really enjoy your 'hustle' theme throughout your post here and elsewhere.
Shit Sublingdale - Wed, 31 Jul 2019 02:43:38 EST 5SEjbCsS No.37946 Reply
Do you stand by this recommendation for learning C/C++ for game development? I just want a comfy project I can work on at night, and a TempleOS-like Flight Simulator or similar silly games sounds fun.
Edward Brallerbad - Fri, 02 Aug 2019 12:00:31 EST whjVh6X2 No.37953 Reply
Would ahrefs be willing to accept a freshgrad if I know ocaml?
Graham Gollerweg - Sat, 03 Aug 2019 22:50:26 EST x6K3CZQk No.37954 Reply
If you want to learn game development you should take a gamedev course http://www.cs.cornell.edu/courses/cs3152/2019sp/lectures/index.php
I used that book to learn C++ for a specific course on parallel algorithms https://www.cs.cmu.edu/~15210/pasl.html If you really want to know a language/programming, you rewrite parts of it's standard library how you think it should be rewritten. Then you look at the actual implementation. Repeat this until your own implementations look at least vaguely similar to the official ones. Now you are programming in their style, which differs in every language like the so-called pythonic way to write programs. The Brown U pyret course in my meme list of courses does exactly this, has the students rewriting a bunch of standard library and it works since everything you need to this already exists, and the solution exists to check your answer.

Probably not , you could try anyway or scheme your way in through support. Learn everything there is to know about whatever business model they're doing, and then weasel into development internally. I did this once for a remote dbms place I worked at briefly. Added myself to the slack channel the developers used and then slowly from there just weaseled my way in to their world by lurking until I could offer to write a feature nobody else wanted to do.

I've only ever used org-mode properly for billing time back when freelancing, and I use it half-assed for note taking, while doing courses or books because you can directly link specific PDF pages inside org. For 'deep work' I just got up routinely X hours before I normally did, to work uninterrupted because there is no distractions, everybody you know is still asleep, and it feels like self discipline is at it's maximum when you first get up for me anyway. If you put it off then odds of you still doing whatever it is you wanted to do will diminish the longer the day goes on imo. That's really all deep work is, uninterrupted time where all distractions are eliminated so you can concentrate. Lot's of artists did this as well as scientists throughout history, if you were any kind of high profile scientist holding some prestigious chair you had to entertain constantly all day and all night various patrons and politcians, and review piles of grant requests which took up all your time. Now it's even worse, because these people can contact you 24/7 with a device that's almost attached to you. So people set aside hours to make sure they could still work https://dailyroutines.typepad.com/daily_routines/artists/ That's essentially the idea of deep work
Martin Dinnerkock - Mon, 05 Aug 2019 22:08:39 EST x6K3CZQk No.37955 Reply
I decided to take a web developer crashcourse from MIT, these are what my disorganized and very rough notes look like attempting to learn the material and how I usually write notes https://n0x400.1mb.site/

Unfinished, only up to lecture 7, plus I made a large digression into CSS Grid which they didn't mention. CSS Grid is pretty easy, easier than frameworks I find. I've never really taken a true webdev course, just kind of hacked together on my own bare min css and DOM abstractions like creating a shadow tree to do incremental updates on in a functional way without changing too much state.
Hamilton Siffingtine - Thu, 08 Aug 2019 13:13:02 EST HNGhXyui No.37957 Reply
OP do you dabble with trading or investing? I feel like doing this curriculum would be a great way to build up some starting capital for investing and afterward you can utilise what you've learned to help with that or even trading.
Jarvis Brellerchag - Thu, 08 Aug 2019 19:12:24 EST x6K3CZQk No.37958 Reply
I haven't yet, though if you're interested: https://ieor.columbia.edu/files/seasdepts/file_attach/BoysGuide.pdf and then you need a data pipeline, most are using Bloomberg Terminal which is like $20k per year, and a few dozen more proprietary data feeds, some of these are only $30/mth subscription price and you can just write your own pipeline to analyze it if you wanted, and were only trading on a personal level. Bloomberg gives you vast information like 'which oil tanker is under repair this week?' so you can predict energy prices and tons of other information, it even has it's own internal craigslist called 'posh' which is all very expensive rolex's and shit, and 'yelp' clone to review extremely expensive restaurants and business class airline lounges. There's also Bloomberg chat, where you can just dump stock privately with some billionaire who's online like Carl Icahn. However the price is way too much, so you would have to find the next best thing which is raw data, and then process it yourself, build a model (read that pdf), identify inefficiencies in the market (arbitrage) and then try and make money from that. To do so you would need a subscription to Nanex NxCore 'N-Core', CBOE Livevol, or QuantQuote. There's also Tickdata but i've never used them.

In general, statistical arbitrage (identifying inefficiencies in pricing) isn't machine learning bound, and it is not a data mining endeavor. Understanding the market you are trying to capitalize on, finding new data feeds that provide valuable information, carefully building out a model to test your hypothesis, deriving a sound trading strategy from that model is how it works. There's so many of these data pipelines it's impossible to keep track of them, because anybody and everybody who works in analytics ends up making their own proprietary feed, which is why the fintech industry is always hiring. You get good at parsing some massive feed then about 300k people will pay you for that information on a monthly basis.

If you're really interested in this, all you need to know to work at Rentec (Rennaisance Technologies), who is probably the most successfull outfit in the world, is C/C++ and a basic knowledge of statistics. Then of course you will be exposed to their proprietary data feed farm, which is currently the best on earth, and if the SEC allows it you can dabble on the side but I don't know anything about US law, seems everything is illegal while in HK, nobody cares.
Wesley Sommlebine - Fri, 09 Aug 2019 08:31:09 EST HNGhXyui No.37959 Reply
Having to learn C++ is rather off-putting. I'm thinking about applying for an internship at Jane Street when I'm on holidays from uni next year. I believe you mention earlier that your plan was to work for them, but you got sidetracked. What do you think about them?
Samuel Brublingway - Fri, 09 Aug 2019 20:05:08 EST x6K3CZQk No.37960 Reply
What I know is they work easy market hours, since they're an arbitrage shop. So no 60hrs a week or anything, just standard hours depending what you're doing (this is for software developer,). When you get hired you get a month long or so internal OCaml course taught to you so you don't have to know OCaml. You can go on their github and see the exercises from their internal course but you should know about functional datastructures and things.

The interview always changes but in general whatever you put on your application/resume, they're going to ask you in detail about to try and see if you bluffed. Their #1 hiring goal is to avoid bluffers at all cost so the more honest you are about your own abilities the better. Unless you can effortlessly explain like Richard Feynman the concepts of linear programming I wouldn't put that on a resume, for example. An arbitrage shop does millions of tiny calculations a day, if you fuck up something for just as few minutes while trading live you've lost a few million dollars so they're very keen to flush out bluffers, just keep that in mind during the interview. Any term you use they will ask you to define it. Anything on your resume/application they're going to drill you on it.

If you know everything there is to know about hash tables and some functional data structures http://www.cs.cornell.edu/courses/cs3110/2019sp/textbook/ads/memoization.html (every whiteboard interview is just a hash table/memoization exam for the most part), and you know the basics of algorithm analysis, like being able to Feynman describe what an upper bound is(note, I didn't write the upper bound, an upper bound), and you did some of that OCaml compiler course then you'll probably get hired. If you master that Cornell OCaml course they will likely be biased towards hiring you since most of their employees are from Cornell and other Ivy league grads, Yaron Minsky himself is Cornell alumni.

What I know about their day to day, is they generally work in emacs, using in-house written emacs modes for code review, use mercurial for version control, and do a lot of code review. Basically everything I do they generally do, however I was sidetracked to numerous reasons, one of which is I can't enter the USA because from age 16-19 or so I was a F/T street criminal with a record that UK or HK doesn't care about (and doesn't have access too) but US border guards will likely arrest me on sight (I already did 3 months at Seatac, do not want to repeat) unless I go to this special NAFTA court that convenes once per week, and attempt to get a youth conviction exception, which I did once before but only for limited time and literally every official I ran into tried to arrest me, and NAFTA doesn't even exist anymore so who knows. tl;dr I'm fucked and probably can't work there, that's why I don't. I highly suggest you do, in fact I would apply F/T, and skip the internship. Drop out of school and go P/T while you work there to finish your degree. They will pay you $250k a year w/bonus after your probation and if you take that ferry to New Jersey you're paying 1/2 the rent of Manhattan and can easily afford school. Good luck.
Hannah Cunningten - Sat, 10 Aug 2019 04:23:22 EST 0TNNAvyb No.37962 Reply
To begin with, I have to thank you for sharing your insights since I read everything in this thread and I learned a lot.

I wanted to ask you recs to improve my programming/general problem solving/algos knowledge, I almost finished my degree but I'm insecure. I was thinking of doing CS3110 and https://cs.uwaterloo.ca/~plragde/flaneries/FDS/ for example(they are worth it even if I don't use OCaml otherwise, correct?), I think I'm familiar with most things in SICP/HTDP/PAPL so this is a better use of time.
David Worthingridge - Sun, 11 Aug 2019 00:51:52 EST x6K3CZQk No.37963 Reply
Learn everything there is to know about basic discrete/finite probability, so if you fuck up the interview well at least you can easily pass the random probability questions all these ivy league interviewers like to throw at candidates https://www.math.ucdavis.edu/~gravner/MAT135A/resources/chpr.pdf

find some TA or somebody else at your school and bleed them for information, that's what I would spend time on if I were to interview at JN.

The Cornell OCaml course, it's goal is to help you learn any language and is just using OCaml as an example but you don't have to know anything about OCaml to work there so don't take it if you feel you already know the material. Really the #1 rule you have to remember is just don't bluff, and in plain language describe to them how you will go about solving a problem. They'll probably ask you to do something incredibly difficult on purpose, like designing a whiteboard regex parser (the first chapter of Programming in SML) for an imaginary language with weird syntax quirks, just to see how you react to being asked to do something like that and what your thought process is while trying to break down difficult things. As you try to explain it they will have some PhD sitting there asking you to define every word "What's abstract syntax?", "Define lexical atoms" just to make this even harder and to test your bluffing potential. If you are honest about your own ablities, and can learn things on your own without being hand held every second of the day you're in.
Reuben Brurringwater - Sun, 11 Aug 2019 16:58:05 EST OlpB3hOZ No.37964 Reply
Wouldn't it be better to apply at the HK office, because of the lower taxes and cost of living? Maybe not right now with all the riots, but when the dust settles. The only thing that worries me about HK is the agreement expiry in 2047. But that's a long way away.
Eliza Nacklespear - Tue, 13 Aug 2019 21:13:56 EST b+OiMDuR No.37965 Reply
OP have you used incr_dom before?
Matilda Sesslegold - Tue, 13 Aug 2019 23:30:14 EST x6K3CZQk No.37966 Reply
Yes, you would likely have a better chance getting in via Hong Kong which was exactly my plan before I ran into some other fintech recruiter there (they're everywhere). Cost of living being better I'm not sure, HK is insanely expensive, and of course a landlord can on their whim decide to just double your rent, or some other bullshit. You would want to find some foreign landlord from Europe (there's tons of them) and rent off them. NYC can be lower cost of living if you take the ferry to NJ everyday but everybody wants to work in NY so competition is much higher.

In other news I decided to infiltrate Crossover and BairesDev just to see what kind of work they do and if the online reviews can be trusted of if they're blackPR. I'm LARPing as a Jr. Developer and putting in a few week's worth of work to see how easy it would be for somebody else to get in there, and if they actually pay you, before I shill them to people. Crossover is famous for near fraudulent recruiting tactics like pushing phony titles and salaries then slicing said salary by 1/3 and offering you that instead after you spend 3 days working on their 'hiring project'. I got the same kind of highly suspect hiring project (suspect as in collecting unpaid labour) but they did actually hire me, and now I'm just running around rampant in the network trying to bill 8hrs for finishing project targets very early to see if they'll fire me or pay for efficiency.
Matilda Sesslegold - Wed, 14 Aug 2019 00:25:37 EST x6K3CZQk No.37967 Reply
Yes, mainly because I didn't want to write/maintain js hash tables. However there are alternatives https://github.com/finos/perspective/ but nothing I've made ever required more than incr dom performance. The cowboy method would be to use vanilla javascript with a hashtable for storage, with all your pieces of data linked to it in a unique way. When you need to update data, like say a changing stock price, you directly access the hash and then re-render that DOM cell. You can write functional vanilla JS, there's plenty of books around like this good enough functional js book https://github.com/getify/Functional-Light-JS

The vast majority of 'indirections' like React or even Bucklescript are kind of trashy when you can just do the exact same thing in vanilla js, but only if you've carefully thought out the logic of your program because of how impossibly complex things can get. There's a book for this: https://mitpress.mit.edu/books/software-abstractions-revised-edition (it's on library genesis for free). I got that book from this brownU course http://cs.brown.edu/courses/cs195y/2019/pages/notes.html which is mainly about reasoning about program design and applying 'formal' methods but in a shady agile way just so you can produce correct code for a pointy haired boss who doesn't really care about correctness but you do being that your name is being shipped with it. In other words this is building models in pseudocode and checking them before you start implementing a crazy js hash table DOM updating scheme.
Shitting Sedgetick - Tue, 20 Aug 2019 18:14:04 EST E/kAXTw/ No.37976 Reply
I am halfway through PAPL and encourage all beginners to go this route. The professor behind the course, Shriram, made a public manifesto declaring that his full focus is cs education. He's just awesome. He actually figured out how to teach programming. He got a h-index of 50. (40 is a strong case for a professorship anywhere)
It's amazing how organically the course have made me adopt good software practices: test-driven development, types signatures, modeling ADT's to fit the problem description. No other beginner course teach these things so well. And this is just a side effect of the curriculum. Thanks for putting this together op, i'll finish it all.

Is it worth doing the 'programming languages' part of PAPL without lectures?

Do you think i can teach myself calculus while doing Dan Licata's Principles of Functional Programming - or should i just do mathematics and nothing else?
Hugh Trotwell - Wed, 21 Aug 2019 03:15:17 EST p7Y8STFQ No.37977 Reply
OP, how much do degrees matter? I can't bother studying all this useless shit they make me, but I'm afraid nobody will take me seriously without a degree. I learn alone.
Walter Fellerwater - Wed, 21 Aug 2019 15:25:46 EST x6K3CZQk No.37980 Reply
There is older lectures, http://cs.brown.edu/courses/cs173/2012/Videos/ but they radically redesigned the course for use with PAPL which is explained here: https://cs.brown.edu/courses/cs173/2017/AFQ.html so now you are essentially reverse engineering/analyzing unfinished 'mystery languages' and trying to figure out what they're doing, and make them complete. I'd say it's worth it to complete without lectures. You build objects and type inference from the ground up.

If you want to learn Calculus, try pimbook http://gen.lib.rus.ec/book/index.php?md5=14074C1DD80FAD624DE1FD4149266E50 although it uses Java for some of the examples this won't matter. His writing style is kind of blogspam in some early chapters but otherwise it's a pretty good book to explain math to programmers. Anything you don't get, look up a Wildberger lecture to show you https://youtu.be/K4eAyn-oK4M?t=380 and you don't have to do anything F/T like only math or only programming, can do the OCaml or Licata course at the same time as any math course.

For example right now I'm writing a set of math curriculum notes and a set of web development notes just one hour per day: https://n0x400.1mb.site/

There's some things you can't do without a degree, like move to another country/visa sponsorship. They have to 'prove' you have some skill a local doesn't, and if you don't have a degree often this means you can't get a visa but of course depends, you can sometimes get around this. Another bonus of a degree is any kind of government job will usually require one so if you wanted to go work in computer security at whatever agency does this in your country you're screwed. If you hate the material you're being taught then switch your degree to something else, take applied math and stats instead. Take design or linguistics then spend all your spare time learning natural language processing or any programming really, since linguistics directly translates to those fields. A few of RHarper's ex and current grad students if you check their resume's they came from linguistics undergraduate degrees. Math also makes much more sense if you know linguistics, since analyzing/parsing a bunch of abstract symbols will be easy for you, most linguistics majors take a lot of math as well. tl;dr you don't have to compsci in university but if you're already there, you should finish some kind of degree in my opinion.
Fucking Blythestock - Thu, 22 Aug 2019 15:06:12 EST OYUyI9gK No.37984 Reply
OP what do you think about making an official discord server for the curriculum? There's the one that anon posted earlier but it's gone, and even if it weren't there's no guarantee when some rando makes it. You could make one in 5 minutes and just link it on the site, no moderation required. And it would be beneficial to learn in a collaborative manner with like minded people, which you said yourself. This thread is the only way (afaik) to interact with others following the curriculum.
Emma Chonnerham - Thu, 22 Aug 2019 18:06:31 EST VDq0sJFX No.37985 Reply

not OP. Here's the discord invite code: V34pTzY

We've had some good talks & shared our plans. I'm happy to give the server to OP if he wants, but I'm assuming he's very busy and doesn't use discord.

I'd also recommend joining the Math discord (google "math discord"). It has a lot of helpful grad students.
Emma Chonnerham - Thu, 22 Aug 2019 18:06:31 EST VDq0sJFX No.37986 Reply

not OP. Here's the discord invite code: V34pTzY

We've had some good talks & shared our plans. I'm happy to give the server to OP if he wants, but I'm assuming he's very busy and doesn't use discord.

I'd also recommend joining the Math discord (google "math discord"). It has a lot of helpful grad students.
Henry Sanningfoot - Fri, 23 Aug 2019 00:47:44 EST x6K3CZQk No.37988 Reply
I've done a few learn math w/programming books, like 'Doing Math w/Python' from NoStarchPress I bought as a prerelease in 2014 IIRC. They're OK, they have the same problems of most math curriculums where too much background knowledge is assumed so the reader becomes lost., and the material isn't advanced enough that you could really get anything from it if you already know the math subject. The only one's I've really liked are Sussman's SICM, which some guy even wrote a clojure library for https://github.com/littleredcomputer/sicmutils and it's one of the hardest books I've ever tried to do as even Sussman discovered his own errors in understanding of classical mechanics when he was writing the book due to problems in everyday math notation. That book assumes you are familiar with The Variational Principles of Mechanics by Lanczos or something similar. Oddly enough I was able to complete much of it anyway, though a lot of things I didn't fully understand at the time but the book is written well enough, and scheme language expressive enough even an idiot like me 10 years ago could work their way through it. Sussman goes even further with this concept, in Functional Differential Geometry which is probably one of the best books I've ever read, which I tried to do after being exposed to that CMU course on cyber-physical systems, which covers differential invariants/cuts. There's even a not well known book that 's a complete redo of Calculus from the very beginning using differential geom Bamberg and Sternberg: A Course in Mathematics for Physics Students which I've only flipped through. One of these days I'm going to re-do Functional Differential Geometry and attempt to fully understand it. Like Knuth suggesting BigO estimation/fudge factor for making calculus easy to do with pen and paper, differential eq done with software seems to make proofs easy when you take that CMU course, though I have no expectation of ever programming something that moves.

Anyway I now fully shill the Wildberger math foundations lectures as the best possible way to learn math from scratch even if I don't buy into 'ancient babylon' tablets about Trig, but I do agree with him that piles of axioms are largely bullshit, but so does Robert Harper and every constructivist as well. I also like how he singles out the Reals as being confusing objects, not that I agree or disagree with his views on them since I don't know enough about math, but I agree that students should be shown they're not looking at a 'number' or a decimal when they're confronted with a real number object, they're looking at an algorithm producing an infinite stream of data. Understand the underlying algorithm and everything makes much more sense.

Indeed I don't have time, hilariously I do everything about one hour per day, using a shitty motorola phone, like the notes I'm doing for the MIT webdev programming competition I'm just doing them on a phone while in a noodle restaurant in chrome inspector/console or commuting on a train. I did the entire CS193//PAPL course on a phone too. I have to do this so I don't get sucked into virtual time sinks. I have to schedule time, which I learned while working in that university lab with a bunch of PhDs who strictly regulated their time. I'm also thinking about making a run at Jane Street (as written prev I might not be able to) so that's been eating even more time doing Knuth's Martingales 'fascicle' 5a, Ryan O'Donnel discrete prob classes, with things like the renewal theorem in probability being a lot of work. The problems are taking me a few days but the best part about probability is it's very accessible, not a lot of math background is needed.

If somebody wants to run it I'll just put the discord invite in the meme list. Though I do credit having to annoyingly go through latex docs and strict mod authoritarianism on math stackexchange with helping me finish a lot of this material, I can't remember how many times I had to ask a question, and just the process of going through all the stack exchange requirements to not get your thread closed almost always led me to the solution without even needing to post. In a chatroom you wouldn't have this prereq, to really think about how to word your question properly but of course such a discord channel could help in other ways.
Henry Sanningfoot - Fri, 23 Aug 2019 01:05:11 EST x6K3CZQk No.37989 Reply
Another book I would consider to be one of the best written, is that R harper 'Programming in Standard ML' book in terms of being the single best source of explaining beginner programming, while at the same time being a pretty advanced book on the subject. I was thinking maybe I should write a brief crash course in programming for the MIT notes, and his very precise decription of things like how a function is just containing a pattern of data is the single best source I can remember, but if I point some potential student there they'll just give up after the first chapter on regex bug finding in SML. Maybe I'll just cut and paste the specific parts with citations. I'm also going to try and get into a variety of those 'curated' freelancer sites just using the MIT material, and giving them a near blank resume to see if it's possible for somebody to follow my notes and con their way in to these platforms. I already conned my way into one with a blank resume, though I can't recommend it because they are fully dystopian with webcam snapshots taken at random intervals to prove you're actually working, so fuck them. There's plenty of others though I'll try. Anyway I have to disappear for a while as it's nearing end of summer and work load will become insane. Good luck anons.
Jarvis Naddlemin - Fri, 23 Aug 2019 16:28:51 EST AM7AjW7P No.37990 Reply
OP I don't know how well you know this but you mentioned trading so I'm wondering if you can recommend some resources for business/finance/investing
Clara Pinnerpire - Fri, 23 Aug 2019 18:20:07 EST VDq0sJFX No.37991 Reply
I'm happy to run it. Your github site would probably refer lots of great people.

link: discordapp DOT com SLASH invite SLASH V34pTzY

Lots of content disappears (451 algos, 388 meme science), so this server would be great to share backups. Sometimes profs don't intentionally take it down, they just prepare the site for the next semester.
Hugh Blatherdale - Tue, 27 Aug 2019 21:03:52 EST x6K3CZQk No.37993 Reply
I added it to both sites.
My meme list gets weird spikes in traffic, sometimes none, sometimes 20k+ people looking at it whenever somebody posts it somewhere (usually China, for some reason).

I also have org-mode html export advice for anybody interested. Just git clone the latest emacs source, and manually edit ox-html.el yourself otherwise you need like 50 lines of #+HEA or #+OPTIONS or a ridiculous amount of custom-variable setting, or setq in .emacs

Latest version you can export to man pages, I should programatically convert pdfs into a manpage for comfy emacs reading as pdf-tools often fails me for some things. I also added the Erik Demaine course before realizing 80% of it is already covered in the functional OCaml book, and Parallel Algorithms book. Sometime I'll fix that. He got his PhD from weird orgami 3D folding algorithms so that's not covered anywhere.
Hugh Blatherdale - Tue, 27 Aug 2019 21:09:38 EST x6K3CZQk No.37994 Reply
absolutely cat planeted

also the 6.172, get it before it disappears. I'm pretty sure most of this course can be done in Rust if you want. I already used their 'advanced vector extensions' for Intel to optimize an open source project in Rust just for lelz. That course if you've done 15-213 and know all locality and stride-1 you can easily figure out most of the slides.
Hamilton Bunway - Thu, 29 Aug 2019 09:39:00 EST ycDo14Nm No.37997 Reply
You use a shitty Motorola phone to avoid wasting time? That's actually brilliant. But how do you avoid the time sinks when you are using a PC?
Clara Givingstetch - Thu, 29 Aug 2019 19:18:53 EST x6K3CZQk No.37998 Reply
I scheduled myself so at least one hour per day I'd do something productive, and I would go somewhere to do it, not be at home.
I mainly followed matt might advice at the time http://matt.might.net/articles/cripple-your-technology/ and http://matt.might.net/articles/productivity-tips-hints-hacks-tricks-for-grad-students-academics/
However I easily reprogrammed my stripped terminal to join the Church of Bob Dobbs and just slack. So I decided to live my life like a star trek episode where when you're done working you just throw down a pad and leave the room disposing of all technology so you aren't just sitting there receiving full propaganda and stimulation on cruise control. That was probably the best idea I've ever had, keep technology away from myself as far as possible when not actively working with said technology. Just try to do 1 hour a day in the beginning. That's really all you need. Keep doing it and eventually you kind of build a 'self discipline' muscle where you can go a bit longer than 1hr, then some more, then a few more hours, etc. I'm like everybody else, I can sit on YouTube at 4am and watch 3hrs of bullshit pewdiepie meme review videos or some other stupidity like hours playing a game. If you just keep to your 1hr of productivity you won't care if you spend 8hrs after watching GOT or whatever because in 2-3 months you'll be shocked how much you have actually done in that time. This is why it's good to keep notes, you'll open your notes on month 3 of a gigantic text and realize, shit, I'm almost done, and I've written over X pages of dense content about this book, and I only did it 1hr a day, which means I spent 90 hours which means 90 written sections. This is like compounding interest, it just keeps getting bigger the more you do it because you build off your prev courses.

I think my first post was in 2015, on a now banned memechan. If anybody has seen the movie Deadpool there's an alley scene (i could only find the spanish version) https://www.youtube.com/watch?v=IhB0fdzTbjE
When they filmed that scene, I was three floors up above it, overlooking that terrible alley in what can only be described as the worst crackhead filled shithole in my entire country.. The spotlights from the camera crew were shining in my shithole at 2am and I decided to shitpost my early (terrible) memelist. So I went from living there, to a completely different universe I never thought was possible back then. Again, just 1 hr a day.
Edwin Claybury - Thu, 29 Aug 2019 23:26:13 EST UjNWrbT1 No.37999 Reply
What approach did you used to learn calculus? Can I skip it computationally and just proceed to Apostol/Courant?
Betsy Climbleshit - Fri, 30 Aug 2019 09:20:06 EST HNGhXyui No.38000 Reply
Can you describe that style of learning more? I've seen your web dev notes and I've tried to do the same thing, but I just spend more time thinking about the notes than studying the material. Stuff like should I take notes during the lecture/book chapter or after, how to know what to put in the notes and how to get that format if you don't use emacs.
Nathaniel Blicklemitch - Fri, 30 Aug 2019 18:47:04 EST x6K3CZQk No.38001 Reply
1567205224846.jpg -(3415254B / 3.26MB, 2336x4160) Thumbnail displayed, click image for full size.
Actually the webdev notes are a bad example, they mainly exist so somebody else doing the workshop if they have questions can refer to the notes in parallel.
Normally when I do a course, like say any math course/book, my notes are entirely examples I write for myself whenever I come across a definition/theorem, and even sometimes a lemma if I'm totally lost. Then I write a summary, how this concept relates to what I'm doing,
For example Apostol's book, Vol1, Complex Numbers. Theorem 9.1 'The operations of addition and multiplication of complex numbers satisfy the following laws...". First I would write a bunch of examples, usually corner cases, to prove to myself that indeed, these laws hold. Then Apostol gives a proof (which, btw, is remarkably similar to Wildberger proofs given in like, lecture 6 or 7 of his foundations playlist (he doesn't believe complex numbers are rigorously sound however). Apostol leaves the proofs of the commutative and distributive laws to the reader. I would work those out myself, usually using latex and just generating the page to stare at it and figure out how I would prove said laws. In 6.24 transforming integrals to rational functions, Apostol gives one example but I would write a few more examples myself to make sure I actually know what he's trying to teach me. Then I move on to the next definition and do that all over again. If you read pimbook the author will lay out this method exactly in every chapter where he talks about 'culture of mathematics'. I wish I had that book to start with. At the end of each chapter my notes were only definitions, my worked examples, and my worked exercises. Then I would attempt to teach an invisible person that chapter, explaining to them how it connects with the rest of the book. Somewhere in the complex numbes I realized Calculus is often the study of 0 over 0.

As for programming notes, for example 15-213 course if you've done it, when they talk about floating point I would write my own examples to show why the bias is needed. I would also write my own examples, thinking up a small function in C and then translating that to assembly and having gcc output unoptimized assembly so I could confirm I knew what I was doing. Then I would look at a highly optmized example and try to figure out why it was written that way by the compiler. Essentially just digging into the material, trying to figure it out with your own questions. "Why does moving this part of the array to the outside make the function faster? What's actually happening here?". I"ll write a few examples and run them, not just relying on the exercises.

But you should just do whatever works for you to understand the material, I highly recommend writing weird corner cases and stepping through them. In university mainly wrote Cornell style notes, where you write a question, and the answer, then go back over your notes and test yourself but I no longer do it this way instead I still try to describe a chapter in the simplest possible terms to an imaginary audience who's going to ask me questions. "What happens when we bit shift greater than the word size? Or less than zero?" Sadly my answers are kind of vague, whenever I'm done the math notes it'll be more clear.

tl;dr read pimbook by Jeremy Kun. He explains this way better than I could. For example, there's a remark about R(squared) just being 'pairs of real numbers'. I went through about a dozen examples in Apostol before I figured that out, thinking I was just squaring a Real number. He'll just give you everything up front. Also, one of my main goals of writing notes for things is that somewhere is a PhD that will do this themselves, so we can have competing notes for a variety of materials. Something I'd really like to do is write a parallel version of notes for TAOCP and walk through everything, using both 15-213 material and TAOCP. For example learning bit shifting in 15-213 then going through Vol 4a and learning how mathematically bitshifting works, mapping each subject to the TAOCP version that goes into ridiculous depths nobody would ever go to. But alas, time.

I watched a bunch of lectures, worked through Stiller's 'Euclid' book, worked through Thomas' Calculus, then worked all the way through Apostol to learn Calculus IIRC. So the worst possible way to learn it. Apostol was prob the hardest math book I've ever done because at the time I had no idea what I was doing and had to backtrack collecting prior math knowledge to figure out a single example in Apostol, but it quickly compounded into a pretty good foundation where the rest of the book was easy to do. Courant will also teach you Calculus as well in his 'What is mathematics?" book. However those took me a long, long time to do. So I now shill Wildberger's math foundations lecture series (learning algebraic calculus) and pimbook[1], which will tell you everything you need to know up front as already explained in this shitpost. [1] Pimbook = https://pimbook.org/
Nathaniel Blicklemitch - Fri, 30 Aug 2019 19:01:56 EST x6K3CZQk No.38002 Reply
This is an old pic from 2017 when I still lived in the shittiest area ever.
The number written on the paper is a collection agency after me for student loans after I was thrown out of school.
The weed cards were a delivery service at the time.
I have 2 copies of Thomas' calculus, because I fucked up and bought only the first volume the first time, then got the thicker multivariable calc volume.
Descartes was eye opening, Godel Escher Bach was a meme I bought into but still interesting even if the first 300 or so pages are just a jumble of self-reference. no bump
Jack Chorringtedging - Tue, 03 Sep 2019 17:06:45 EST kvLq/8FL No.38008 Reply
https://functionalcs.github.io/curriculum/#org4e43d70 here you have a quote that says "Datatype derivatives allow constant time access to the entire structure". Does this mean you can have a linked list with constant time indexing or something like that? I suppose the quote is from 15-150, which I will probably get to soon, but can you give a little sneak peek?
Lillian Billerbury - Sun, 08 Sep 2019 13:38:33 EST ewR9iE9k No.38011 Reply
I saw @homakov say this too. Why is it a big deal to provide ID, proof of residence, etc to the exchange? I mean arbitrage bots aren't illegal.
Wesley Mabblefot - Wed, 11 Sep 2019 14:01:04 EST gXEBTsUk No.38014 Reply
How'd it go with Crossover and BairesDev? How does it compare to Toptal? Which would you recommend to a PAPL graduate looking to make some money on the side?
Phoebe Bevingstat - Fri, 13 Sep 2019 00:12:10 EST x6K3CZQk No.38015 Reply
To be honest I don't like any of them, TopTal seems like the least suspicious out of all of them. CrossOver I had to pull the pin and evac as they wanted too much spying.

Prob the best way to freelance would be to post yourself on the HN montly freelancer page and get some guy with a side project who will hire you. I also think PAPL was carefully designed to pass whiteboard interviews and call screens. Almost everything I've ever been asked in an interview PAPL covers. TopTal I have to reapply, to try their new hiring method, and I got sidetracked on some other things (math site). I have been dormant there for like 3 years I'm predicting they'll just reinterview me and not notice I already have a profile.

CrossOver uses highly suspect recruiting, but I wanted to get in there anyway to see if it at all is legit, sadly there was just too much spying requirements. BairesDev seems like it's entirely South America devs but I'll try there anyway and report what I find, as long as no spying. TopTal to their credit doesn't require any bullshit process running to take your picture every X mins and prove you're actually working.

You should also know that PAPL maps directly to OCaml, there's no reason you can't do the Cornell OCaml course or jump into ReasonML if you wanted and then pimp yourself on HN freelancer. Or just pick the language you personally like the most, go on code triage website, find an open source project and start solving issues. Make your github profile a marketing profile filled with ways to contact you. You'll just get offers. This is how I got my first remote job
Phoebe Bevingstat - Fri, 13 Sep 2019 00:37:41 EST x6K3CZQk No.38016 Reply
Because of 'correspondent' banks. You see if the exchange you're using at all touches a currency that is 6th degree related to some correspondent bank in NY (they all use standard chartered USA or other US foreign exchange bank) you're utterly and totally fucked and must submit a pile of identification. This is why BTC-e was awesome while it lasted, because the now imprisoned owner was running a total cowboy exchange in Rubles so you could avoid these problems however even the Chinese exchanges now have some kind of relation to a US bank and you need to hand over everything about yourself, and they stop txn for money laundering even if you're just doing small amounts, etc.

I haven't been paying at all to cryptocurrencies for years, but I believe there's an outfit out of SF called O(1) going for a tezos/OCaml clone and looks promising. They're hiring OCaml devs anyway. However right now the truly most dangerous thing you could ever do is get involved in currency trading with no ID you're just asking for whatever outfit to seize your entire wallet pending a notarized identification package mailed to them. That said IRC still exists and it's still lawless. Abstract some kind of arbitrage there.

Once upon a time I was really interested in decentralized cryptocurrency, but the massive amounts of fraudsters and shills pimping it as some kind of 'investment' just drove me away. I still think it's awesome, as somebody who once suffered even the E-Gold and liberty reserve crackdown, that you can pay somebody without trusting a middleman, and do 3rd party payments easily, to me that is what cryptocurrencies should have focused on instead of various ponzi schemes and get rich quick junk. For example when it became possible to accept bitcoin as payment, with full insurance that a payment gateway would instantly cash the coins and provide you the amount of money in seconds without risk, I honestly thought there would be gold and silver mail order companies selling arbitrary amounts of silver with live pricing but nobody ever did such a thing. So far for me cryptocurrency has been a giant disappointment of what it could be, if we just could kill off all those "investors" turning it all into a big cancer.

Another thing about cryptocurrencies nobody uses, insurance. Think about this, you create an anonymous service, and you place a deposit somewhere and that acts like insurance for your anonymous exchange or whatever it is you're doing. You bootstrap you service with a decentralized insurance and then can easily make everything transparent so whenever I connect to somebody's Tor changer I can see that the daily max spend hasn't been reached yet, and if all my coins are stolen then a 3rd party can review these txn and refund me. Things like this make cryptocurrency interesting to me and should be looked at more instead of 'investment'.
Phoebe Bevingstat - Fri, 13 Sep 2019 01:10:42 EST x6K3CZQk No.38017 Reply
*paying attention

I should also elaborate why it sucks now, major exchanges will just report your 'earnings' to your government authority despite the fact that you aren't personally profitting and are perhaps just running a game keeping all crypto assets inside various exchanges without paying out yourself. This doesn't matter and you will have to pay thousands to your nation state anyway. That's why I had to stop doing it, even if it was mainly just an educational thing trying to exploit arbitrage it's just too much work paying tax lawyers to keep the nation state away from seizing everything you own. Plus at that point Bitcoin had essentially become just a cancer ridden investment vehicle and the hacker fun was sucked out with everybody back then on bitcointalk ripping each other off or shilling nonstop their vaporware startup so I pulled the pin. One day the cancer will be chemo'd after some kind of great cryptocurrency collapse and we can go back to just being hackers trading tokens or something. nb
Samuel Chemmlenerk - Fri, 13 Sep 2019 22:34:57 EST x6K3CZQk No.38022 Reply
1568428497171.jpg -(2415352B / 2.30MB, 2336x4160) Thumbnail displayed, click image for full size.
this will be a no bump.

Anybody who wants to hear a boomer cautionary story that may or may not be bullshit? SWIM wrote an article about this once and they sent me a hoodie, which means they weren't anonymous, SHIT. You're supposed to be anonymous! Anyway, a lot of people like SWIM were probably at one time or another interested in e-crime and how it pays a lot of money, and I'm here to tell you how it works in the real world beyond your pefect strategy, because I know all of you have perfect strategies like SWIM did until you implement the strategy. Then everything goes to hell and you end up in Seatac federal detention center. I'm writing this because everybody thinks they're cruise control intelligent enough to avoid getting caught, I truly thought SWIM was and had a grand plan all laid out, it blew up in SWIMs face and was a red pill the size of a bus shoved down SWIMs throat that so-called 'really intelligent' person had absolutely no idea what they was doing.

Anyway when I was in kindergarten, they told my parents I had a Grade 12 reading level, this led to me going to some special schools all of which I flunked out of because I screwed around as a professional delinquent, unable to see my future. Eventually I ended up back in the public school system and guess who I hung out with, mainly criminals. Due to naive and sheer arrogance I had this idea that I could easily game this VR world of criminal conduct, and I actually wrote articles about this (pic related). Everybody (including whoever is reading this) thinks they are better than a street criminal, and can easily figure out a better strategy. I too fell for this meme, and got involved in this scene, which I can only say is an eternal source of shame for my life and family ( actually my family doesn't even know this story, I hid it from them pretending to be somewhere else for 3 months). Anyway, as you're guessing, it didn't work, I had no clue, and eventually I discovered that statistically all crime is just a meme, nobody wins, everybody involved loses except the cops, no matter how intelligent you think you are.

A long time ago through a combination of events I can't get into without triple cringing, I met somebody who had connections to various meatspace crews , and ended up programming the phones of every major criminal in my city. My main competition at the time was an ex gangster who ran a blackbeerry server, which I knew were backdoored. A single key to unlock all messages? No perfect forward security to stop recursive evidence? At the time I was using the NSA mailing list, to program SEAndroid, this is actually where I got my first job, because I was active on that list (I'm not American). When that happened I was at the time, the most idiotic street criminal you could imagine in your mind, an embarassment to my own family. Throwing my intelligence down the toilet to engage in petty criminal behavior. During this time no university would take me, I had already ruined my life associating with known gang members because I honestly thought that of all people, I would know how to strategize a winning solution to the dial a dope problem (to my own credit it worked, but at severe cost). Anyway my competitor was shot outside the gym walking to his car because they thought he was setting up a jack, he knew when the source was coming in and would tip off the competition for a fee to come and take it. During this time I considered my life choices were idiotic, with the one other guy doing what I was doing gettting killed, and I ran the probability of me getting killed continuing in this lifestyle. It was heavily looking like I was going to get shot walking out of the gym too because think about it, these guy's don't care, anything that happens to them they will just blame the fool who is organizing their comms. Why wouldn't they... hey we got robbed and only one other guy knew about it (me). So really stupid things beyond this post happened, causing a lot of heat to concentrate on the people who were core involved. As i mentioned, I was beyond naive and cruise controlling on arrogance so I crossed the border and ended up indicted on a lot of charges, and spent months inside Seatac federal prison. It took a US fed prison to wake me up. All the charges were eventually dropped but I had never been so humble, everything I thought I knew was just a meme and there were professional cops dedicated to knowing much more than me, and throwing me in jail forevever. This is when I started to write the meme list of courses, and whatever you do, don't be like me and think you can cruise control through the seas of illegal activity . (I also have a Max Vision/Shadowcrew story, for another time). I was considered the most intelligent kid my whole city and I still fucked up, I almost got life in jail, I almost got my so-called celebrated abstract thinking skills absolutely crushed by clever cops who didn't even live in my country at the time. The point is everything they told me was just a bunch of bullshit, and I don't think IQ tests are what they claim thy are because I definitely don't feel smarter than anybody else. Just lke you guy's it takes me a long time to learn something despite them claiming I was a (failed) child prodigy.,

However I can't totallyt eliminate my idiotic and arrogant past, that time I served in Seatac that my own family doesn't know about changed my life. I met people truly dedicated to self improvement, and it was then I decided my life should be dedicated to learning everything I can. This happened after they transferred me to Arizona (again my own family won't believe this because I had friends phone in my status), and I met a guy in the yard who was vastly more intelligent than I was, but oddly chose a life of criminal activity. Last time I checked BOP and corections AZ, he's till out.. Anyway I was like everbody else, thinking they could fool the 'stupid' federal agents. It didn't work out for me, I spent 3 months in Arizona and 1 month in Seatac. This is why I can't work a Jane ST in NY. I was that guy who thought he was smart enough to avoid the police. Anywas who cares about me, they're trying to jack Max VIsion on a life sentence for landing a drone in a federal prison. You should know it's a trick, some snitch trying to sell him out as Max is honestly the most intelligent hacier sans Stallman that ever lived and he would never do this weeks out from his release. Anyway 420chan trust me when I saw your future criminal plans won't work out like you think they will, unless you live in Florianopolis or Sevastopol, then I have more advice. Just kidding, never endp were I did. The brutal lonliness of spending you're thir'd month missing you're gf, surrounded by people who want to murder you. What an awful time to be alive when ther'es so much more going on that I never even knew about until know thanks to CMU and Brown University. Without them I'd be back in that Seatac lockup. A cautionary tale and parable, on cringe boomer cruise control.
Samuel Chemmlenerk - Sat, 14 Sep 2019 15:22:02 EST x6K3CZQk No.38026 Reply
oops note to self never drunk phonepost while partying on holiday. None of that is even remotely comprehensible

I started the 'Intro to mathematical maturity' page doing it one hour a day, and will post it sometime this week if anybody wants to go through the 15-151/21-128 book and some others. You don't even need the whole book just the first couple of chapters. Math is really the only speed bump that everybody gets stuck on, because it's just piles and piles of abstractions and the author/lecturer will just assume you're familiar with prior levels of abstraction so won't even mention them. Then when you try and go back to the previous levels, you find an enormous list of topics and books that seem impossible to do so you just give up. The good news is if you want to take those CMU AI courses, the math is 'easy', after you do this as there isn't a lot of esoteric proofs or extremely difficult analysis in them. no bump
Shitting Clubberdatch - Sun, 15 Sep 2019 14:29:02 EST mIm9WWDL No.38028 Reply
>when you try and go back to the previous levels, you find an enormous list of topics and books that seem impossible to do so you just give up
This exactly describes me from not too long ago. What I found helpful was to keep a study diary. Basically at the end of every day I write down what I want to study tomorrow as well as a couple of sentences describing what I learned today. It doesn't take much to start, it could be a single lecture or chapter of a book, which everyone can do. A single chapter might take you a couple of hours, but after a month you will have done the entire book. And after you're done for the day you can sit on your arse and play games for 10 hours without a shred of guilt. I think the best advice is to just start doing something. It doesn't even matter what it is, just start and don't stop.
Anyway OP, I'll be on the lookout for that maths page, as I am just finishing a book and will have some more free time. Thanks for creating the curriculum, godspeed.
Angus Hezzleletch - Wed, 18 Sep 2019 10:45:27 EST x6K3CZQk No.38031 Reply
Or perhaps you become super lambda man like from the Cornell coq notes on proofs are programs https://www.cs.cornell.edu/courses/cs3110/2018fa/lec/22-curryhoward/notes.html

The real world algorithm class is better than expected, I've been leafing through a book they use on computational geometry that I posted to the meme list and was surprised how practical it is. It's the last book you would assume would be practical. The slides about all classical algorithm books like CLRS assuming writes take the same time as reads is interesting too now that we have persistent memory getting cheaper.

Anybody who wants to jump into the fire head first and go against all common sense, right now is likely the best time to apply to JS in HK and almost certainly be hired. Not only will HK authorities desperately try and give you a working visa as they're losing foreigners en masse, but the application pool to JS of highly skilled Frenchmen with OCaml university experience has dried up. It will be odd at first seeing locals wearing pro-Trump shirts and waving American flags everywhere, and you can't go to any train stations at night for fear of regime hired goons lurking with bamboo sticks waiting to jump anybody who looks sympathetic to the protests but the people will genuinely be happy you are there to 'witness' and even walk up to you on the street thanking you for being there and not running away on the first plane home. If you don't get into JS there is an army of desperate fintech recruiters waiting for you as well since HK is putting in a bid to takeover the LSE. Most locals don't want these jobs, they want to be traders or fund managers, not write software.
Jenny Pittstone - Mon, 23 Sep 2019 12:19:54 EST GNfBB6bF No.38035 Reply
OP, do you use smart drugs, or cognitive enhancers? Also, do you care about diet or physical excersises?
Isabella Cloffingforth - Mon, 23 Sep 2019 22:24:29 EST x6K3CZQk No.38036 Reply
All I know about diet & exercise is anecdotal, which for the most part is what all diet and exercise advice is: it worked for me so thus must work for everybody. My anecdote for what directly helped with studying was I used to blast 20 mins or so on a stationary bike in the morning before I took a shower and started studying, only because I was getting up at 3:30/4am, and it made me less distracted. I could focus more easily on things without having the overwhelming urge to go flip through distractions on the internet or whatever. It became no problem to do 'deep work' though again this could just be because I did it everyday, so naturally got better at it, and the exercise didn't really help at all.

I also did a bunch of pullups, using the same pullup bar this guy has: https://youtu.be/l16LGA1Ucbw It's the Stamina 1690 power tower and I think it was $90. Both of them fit into a tiny apartment which I was living in at the time.The pullups gave me motivation for progressing with this material because you were much more aware of the 'gains' you made where one day you could only do 2 then out of nowhere you could do 5 just with repeated consistency, so I assumed studying would work out the same, and it did just much more slowly. You finish one book and now you only need to read half of the second. You finish that book and now you only need to read a few papers and study a single method out of the next course you do. I've never trusted any kind of cognitive hacking or taking handfulls of curcumin. As for diet it is just something you experiment with that personally fits you. The only real rule is the less you eat out the better, since every restaurant is just dumping heaping spoonfulls of sugar and oil in everything.

In other news the MIT 6.170 course I just finished, the recorded lectures on Conceptual Design (he has a book about this coming out Feb 2019) were surprisingly good. https://stellar.mit.edu/S/course/6/fa18/6.170/materials.html (bottom of page). In fact after I watched those, I scrapped something like 40 days of work doing a math guide because I realized I had completely fucked up the concept, and realized what I really should be writing a walkthrough for, is the VanDrunen discrete math and functional programming book, because it's free now (on libgen finally), you don't need too much of an impossible background meaning not having to start at scratch, and every chapter has a direct mapping to a CMU or Brown lecture, plus it teaches you proofs, plus it teaches you lambda calculus, so all the Robert Harper lectures will make sense, and you for the most part are translating math equations into programs and types so the perfect beginners math guide since you're running math in a REPL. IIRC when I did it years ago I learned Monoids/group theory from that book writing an example with fold. Anyway these notes will be different the MIT notes, they will be a full walkthrough/guide not the same kind of notes I took on my phone while doing webdev review. tl;dr if anybody wants to watch a good non-technical lecture, see those Conceptual Design lectures they've already helped me.
Isabella Cloffingforth - Mon, 23 Sep 2019 22:35:20 EST x6K3CZQk No.38037 Reply
Oops Feb 2020, I think. They hand out preprints in class and he emailed me the release date, which I have lost in emails somewhere.
Sophie Sonningmere - Mon, 23 Sep 2019 23:47:47 EST DFw2Xv/K No.38038 Reply
OP, do you recommend joining programming contests/competitions? How can I utterly destroy those? Also what book do you recommend for data structs?
Hedda Sudgedidge - Tue, 24 Sep 2019 00:45:44 EST Spg4Zj63 No.38039 Reply

coding competitions are an excellent way to get practice, but they are also a frequent reminder of how much you suck and a good example of the fact that your dumb hobby / project code is not going to cut it in the real world. every bit of experience you can get that helps you Not Suck is crucial. you are going to get shit on a lot and you might hate it but it is extremely helpful.
Phineas Sommerbanks - Tue, 24 Sep 2019 10:19:38 EST 4Bpkr7EE No.38040 Reply
OP, while making this amazing curriculum, have you thought that perhaps a lot of the material is inefficient or even outright useless, due to having to conform to the educational system of the universities? Where it doesn't really matter if it is useful/practical/interesting, what mostly matters is if it is learnable and testable at exams. There are a lot of insightful and practical things for example that might be too easy or too hard to be put on exams. So they are skipped in the lectures completely, and whole books are written without mentioning them.

I'm writing this as I'm studying for graph theory exam, since it's subject with huge insights about the structure/behavior or a shitload different systems, but in the class we mostly memorize algorithms for graph operations, and formulas for determining if this graph is of this type or the other type etc. Underwhelming. The approach in the networks/markets book seems very different, where graph theory is used appropriately as a tool.
Walter Clegglechare - Tue, 24 Sep 2019 10:52:25 EST Z/kwUmVB No.38041 Reply
What do you mean by this OP, why would you need a walkthrough to read a book?
Jenny Pittville - Wed, 25 Sep 2019 06:02:42 EST Jwq7K7iM No.38042 Reply
How do i stop being a retard who keeps losing momentum and has to start over from scratch?
George Pidgepone - Wed, 25 Sep 2019 10:12:11 EST x6K3CZQk No.38043 Reply
Same reasons univeristies have recitations, or TAs instead of just handing out a book. Plus it's still 'math from scratch' it's not just a single book, it's everything I found that directly links to being able to do something like the first chapter in TAOCP or finishing an AI course. The problem now is whenever somebody wants to go back to relearn some math, they get pointed to an impossibly large Khan Academy curriculum, or huge calculus book which makes assumptions about the reader, doing magic in the first few chapters "and here we simplify three massive sums into just one without showing you how".

Here is an example of a math book which doesn't make assumptions, notice the review section on how to do algebra properly http://www.math.cmu.edu/~jmackey/151_128/bws_book.pdf

I restarted a lot of things, I found it helpful to have a weekly and daily goal instead of the goal of 'finish this course'. You can also try the reverse method where you want to build something, then dig through the material like a researcher which keeps you interested. For example let's say you wanted to invent a 'mobile security VPN' that also acts as javascript firewall, where it analyzes and parses javascript and existing attack signatures to detect for malicious code before it hands off to your phone browser. Something like that would require a ton of research, which means building a simple prototype then research into optimizing it by reading some of 15-213 book, a course in compilers, pattern match optimization, digging through the practical data science course looking for anything that could help you, an OS course to squeeze performance, then you would probably scrap the entire prototype and try it from a different method, learning more about multicore algorithms and language processing. Self driven research as opposed to just starting from the beginning. Pick a project that is interesting to you, start at the easiest one, use the meme list of books and courses as your personal library to complete it.
Sidney Bommerstog - Sat, 28 Sep 2019 08:46:56 EST NUZrzgB3 No.38065 Reply
What do you mean here by bounty hunting? Finding security flaws, or just fixing general issues? If it's the former, is that something one can do after finishing 15-213 and doing some challenges like microcorruption or cryptopals?
Reuben Fisslederk - Sat, 28 Sep 2019 10:45:01 EST x6K3CZQk No.38066 Reply
Bounties for feature req:

If you mean security instead, if you have read chapter 3 of CSAPP/15-213, and you did those bomb and attack labs, and you specialized a little more looking at the subjects here: https://trailofbits.github.io/ctf/vulnerabilities/binary.html and you were able to do some kind of progress in microcorruption you would likely be hired as a 'junior consultant' as they are desperate for people with this kind of knowledge because what's going to happen is they are going to train you pro reverse engineering over a few years and you will eventually quit to become an independent contractor charging an enormous daily fee, with no end in sight to the amount of offers given you. People want to reverse embedded binaries, they want to reverse iOS apps, they want to analyze malware and paying for an audit usually includes binary auditing. High demand very little supply of people with time to take new contracts. There is also this (very large) book https://beginners.re/ and exercises https://challenges.re/
Reuben Fisslederk - Sat, 28 Sep 2019 12:19:38 EST x6K3CZQk No.38067 Reply
eh, note that beginners.re book is primarily review up to page 650 or so if you've already done 15-213, so isn't that impossible to finish. In fact a lot of things are review if you take 15-213 such as any typical undergrad operating systems book, you can safely skip 2/3 of the chapters, the MIT optimization course many lectures will be review, most of it covered in CS:App sometimes in more detail than the MIT course even, and you even write your own garbage collector in CS:App and parallel assembly so if you choose to do 15-210, some of that will be review too like looking at a program and identifying where the work can be split up to run in parallel.
Hedda Turveybanks - Sun, 29 Sep 2019 07:48:30 EST N+W+VItN No.38074 Reply
Thanks for all the hard work OP. When can we expect to see this? Should I get started on the book or wait for the guide to come out?
Caroline Mondlelack - Sun, 29 Sep 2019 14:17:31 EST x6K3CZQk No.38075 Reply
If you want to try I'm starting here:

Which is what he claims is '21st century mathematics' and is a redefinition of math foundations using less confusing notation, with often hilarious rants about poorly defined objects in math. The vids are only 10mins long, until you get to where he teaches calculus, and they're about 30mins or so, which you will be surprised when you learn algebraic calculus without ever seeing a picture yet you will firmly know what a 'higher' derivative is, taylor series, integral, the standard calculus subjects. He has you proving the laws of division which is interesting, intro lectures never do this.

Then I'm progressing to the Thomas VanDrunen book which is the same as every 'intro to math reasoning and proofs' book but you're writing programs instead. It also fits perfectly with those Brown 019 lectures so if somebody took that course and this in parallel they'd both compliment each other. Most universities you're doing 5 different courses per semester https://csd.cmu.edu/sample-undergraduate-course-sequence

I'm also going to go through as much as the Math Prelims in TAOCP as time allows to prove to the reader that yes, this actually isn't impossible to do even if your background is exclusively just a playlist of 10min foundation crash course vids, and some chapters on math logic as SML programs. Of course every page there is dense to the extreme and you could spend 3 weeks on a single page (like Knuth's crash course in determinants which is a small paragraph: now try these 30 advanced matrix exercises) but it's not impossible it just takes work to fill in some background as you go, and speed quickly picks up, you start running into things you already know. MIT open courseware has lectures on all these topics too. The goal isn't to become a mathematician it's just to build 'math maturity' and prove to yourself that you don't actually have to go back to zero and do years worth of Khan Academy material, or 1000+ page calculus books in order to teach yourself some basic discrete compsci topics.

I also have to figure out where to archive all this so it won't get obliterated by copyright lawyers. Even pointing to a resource like libgen is now an 'offense' in a lot of countries.
Jarvis Sockleforth - Sun, 29 Sep 2019 14:42:55 EST mIm9WWDL No.38078 Reply
I am mostly interested in the maths guide for pure maths sake. Ironically, right now I have to prioritise maths rather only learning maths to complement CS topics like type theory and cryptography, which I want to be doing. The reason for this is I'm a first year maths major, so I don't want to flunk. I know most of the "computational" maths like that youtube playlist, but what I have to be learning now is proofs. Is that book a good way to build mathematical maturity, even though it models proofs as programs?
Caroline Mondlelack - Sun, 29 Sep 2019 15:17:09 EST x6K3CZQk No.38079 Reply
There is a pure math book in the meme materials list, which also teaches you LaTeX https://infinitedescent.xyz/ which is used for 15-151 http://www.math.cmu.edu/~jmackey/151_128/welcome.html

There's no answers, so what you do is for each exercise is look how the author wrote proofs in that chapter, then use the exact same technique which most of the time will work. Then go on math stackexchange, and ask people if your logic has any flaws but doing so in the pendantic format of stackexchange laying everything out in LaTeX, carefully wording what you're asking for. Somewhere in the process of just wording your question you'll realize that yes, it is right (or find an error you missed). The author of that book claims this is how you learn: https://infinitedescent.xyz/20180214-exercises-ibl/ and it's how I learned.

However you have access to TAs, office hours, probably some class Piazza forum where you can ask each other questions, student study groups, and since you're already paying a huge amount of money for all that you should use it to your advantage. Schools do everything they can to prevent you from failling if they see you're trying, I wouldn't worry about it. I would probably focus on whatever material they use so you can ask them questions about it.

The infinite descent book spends many pages throughout explaining how you should communicate math to other people like TAs. Just don't commit the cardinal sin of going to office hours and asking about something that is already on the homework you haven't tried first. They will then prioritize you as back of the line student who's lazy and help other students first, which means no guaranteed access to TAs/office hours ever again that semester.
Caroline Mondlelack - Sun, 29 Sep 2019 16:05:21 EST x6K3CZQk No.38080 Reply
In the appendix of the infinite descent book, there is a section on proof writing and vocabulary, which is probably the best I've seen anywhere. Notice the first example they are using function composition: g() o f(). In SML, there's a built-in composition operator (lower case o ) and this is all covered in the VanDrunen math book. Though it doesn't look like it the functional programming & discrete math book is almost the same as the infinite descent book in many chapters, the primary difference being you can run your proofs about sets and functions as code and verify they're correct yourself. You also can describe the proof in english, reading the code, which is a set of deductive statements. Both are trying to teach the so-called mathematical mindset just one is using SML for examples while the other one has pure math examples.
John Siblingtock - Tue, 01 Oct 2019 22:23:44 EST KFQcJgOf No.38092 Reply

Maybe some ex-URSS country could provide hosting that doesn't subdue to the anglosphere influence. (just host it in School breh)
Beatrice Mackleway - Wed, 02 Oct 2019 05:08:03 EST Jwq7K7iM No.38093 Reply
bros i'm going to start HtDP for the 3rd time. Surely i'll make it through this time.
all the picture drawing turns me off though
Jenny Sacklehood - Wed, 02 Oct 2019 10:57:53 EST x6K3CZQk No.38094 Reply
No need to start there again just do the prereqs for PAPL and jump in to the Brown class which is reading through the Prologue, Part II: Ch.8, 9 through 9.1, Part II: Ch.10 through 10.1 and all of Part III. You can read this in a single morning over a coffee you don't have to do all the exercises there. What you want to know is basic template and design 'recipe' but most of this won't even be covered in the PAPL book or lectures very often except for that part where he scolds students for showing up to office hours without it "Where's your template? Where's your examples? You got to this course using your old methods of development but now you're struggling, why not try our method". Pyret is also much easier than Racket I find to conceptually learn since it's similar to OCaml syntax, make a type, create varients, pattern match on them, no huge nested COND statements.
Cornelius Fomblemork - Wed, 02 Oct 2019 16:43:18 EST tkgK7+HD No.38099 Reply
OP, is freelancing with OCaml(Ocsigen framework) lucrative for someone in a third world country? Nobody uses this except for some dedicated peeps here lol.
Oliver Pammlewill - Sat, 05 Oct 2019 08:44:03 EST mcNYkAPj No.38112 Reply
OP you used to shill Lisp but you've since removed all those resources and are now promoting mainly OCaml. Why is that? Is it still worth it to learn Lisp for:
  1. Work (freelancing and industry). I guess there aren't many jobs out there using Lisp but perhaps you could use it in freelance projects that don't have technology constraints.
  2. Building shit i.e. side projects that you work on in your free time but are nonetheless full fledged applications.
  3. Programming insights like you mentioned previously learning CLOS will help you understand OOP in C++ and things like that.
Doris Crubblebury - Sun, 06 Oct 2019 13:22:11 EST Nlh9hPFx No.38124 Reply
I watched these lectures on design and found them very interesting.
Can you recommend any other resources for this kind of thing? I want to start a fairly large project and would like to write an informal specification where I detail everything so that I only need to concern myself with the implementation later.
I think this topic of design is underrepresented for how important it seems to be.
Shitting Bardstock - Sun, 06 Oct 2019 14:11:01 EST x6K3CZQk No.38127 Reply
No, Ocsigen/Eliom is fun to hack around in but it's mainly used from what I can tell by French sportsbetting companies. The only hacky webdev I've done is OCaml w/VDOM, also incr_dom which is the Jane St (just a MVP so far) version of that library and TEA (elm) with incremental algorithms used for better VDOM diffing , and Reason-React, which has some problems because you're dealing with node junk and bucklescript quirks. From what I can tell the everyday web freelancer is still just a master of vanilla js/css/html though if you can tolerate the npm/node cancer ecosystem you may like bucklescript-React because it forces you to handle corner cases you never thought about in the first place. Going through a hundred 'critical security fixes' for the 2000+ npm modules you install though and writing lock files for all your dependencies is incredibly tedious though. It's refreshing to just toss that junk and try something like NET or Clojurescript instead.

If you want lucrative I would suggest getting into compilers. Everybody wants DSLs and custom parsers these days for a lot of things, like voice analysis.

Lisp was in the 'preliminaries' section which I removed since that Brown course replaced it, and I'm rewriting that entire section into it's own site starting today actually. I still like the lisp as a system'development style and shill Clojurescript/Clojure https://n0x400.1mb.site/#org373a90a but nothing is easier than ML family language modules for writing very difficult software. Write a new feature, drop it in as a module, the refactor is trivial. Those advanced data structures courses are trivial to implement. Writing your own code walking macro to morph it into another tree (compiler) is also easy to do with OCaml existing libraries. F#, SML, OCaml are preferred because all the things I failed at creating myself due to complexity exploding in my face were straight forward tasks in ML languages so I thought there's other people out there struggling to learn this stuff, so I should put together some kind of resource so they can discover it's not impossible to learn and do this yourself in fact it's kind of easy once you get past the difficult introductory mountain. That's when I found Robert Harper's blog where they ran studies on the CMU grads deciding they needed to trash their existing imperative curriculum as many of their top students admitted they had no idea what they were doing and just kind of guessed their way through the degree trying to fit program state in their head. Anyway if you like Lisp it's always still worth learning, I still use it.
Shitting Bardstock - Sun, 06 Oct 2019 14:55:21 EST x6K3CZQk No.38131 Reply
Look up the prof Daniel Jackson and see if he has any other resources on design, they were really good lectures. The 2019 fall 6.170 page will probably cover this a lot more https://stellar.mit.edu/S/course/6/fa19/6.170/materials.html also CMU has a few courses on design and prototyping http://www.cs.cmu.edu/~bam/uicourse/05863fall18/schedule.html that one is open with avail lectures. The lecture 'Effective ML' is great and covers some of this too, there's numerous versions he gives it every year https://www.youtube.com/watch?v=-J8YyfrSwTk

Jackson also wrote the book on Alloy http://alloytools.org/ which is a 'light formal verifications' style language that they use in the Brown 'Logic for Systems' course.
It's a relational algebra (like set theory) to describe how a program model should work, and is great for say designing a difficult multi user system where thousands of people will have different access levels. You can use Alloy to determine if some combination you haven't thought of can exist where your program's logic can be broken such as User X can access Resource Y when logged out or Jr Admin B can somehow access Sr Admin A's resources due to a combination of events/state. There's a few notes here: http://cs.brown.edu/courses/cs195y/2019/pages/notes.html but the Alloy book will cover a lot of this.
Cedric Nurringstutch - Sun, 06 Oct 2019 16:21:17 EST E/kAXTw/ No.38132 Reply
Thanks for the list, op. Learning a lot and gaining confidence. I wanna get good at math. Doing Wildbergers curriculum at the moment. I'm thinking about doing this book next to get comfortable with proofs: https://softwarefoundations.cis.upenn.edu/. Slugging through a bunch of coq exercises seem to be a cool way to combine math and cs. Thoughts?
Cyril Turveyspear - Sun, 06 Oct 2019 17:36:54 EST vJuCghu6 No.38136 Reply
I was actually just thinking about making a DSL for generating sheet music.
I guess I should use OCaml since I've been meaning to learn it and everyone goes on about how it's great for compilers.
What do you recommend for babies first compiler course?
Matilda Bluvingbury - Fri, 11 Oct 2019 22:16:36 EST x6K3CZQk No.38147 Reply
The Cornell CS3110 course has a few notes on Coq, it's actually a great way to learn proofs, same with the CMU 15-150 course and esp the Thomas VanDrunen Discrete Math w/Functional Programming book. If you get stuck on something ask Stack Exchange I did once and one of the Coq maintainers replied with a ridiculously detailed response. Keep in mind Coq is way overkill for some software and is perfect for what you're doing but formally verifying everyday software would be a nightmare to do. For that there's Alloy or TLA+ esp Alloy which converts to SAT and checks your model in seconds.

PAPL the book will cover a lot of this, I learned from Andrew Appel's ML compiler book but there's a course in OCaml w/recorded lectures in the meme list if you're interested but you'll likely need to complete CS3110 by cornell first, which honestly isn't that hard, OCaml once you figure out 2 major things: 1) all functions really only take 1 input (a tuple) and the let... in syntax, and you're good. When you take the 'advanced data structures' like red black trees part of that course you'll be shocked how easy it was to implement everything yourself. OCaml also has surprisingly magical optimization, you basically are writing common table expressions like you would in SQL where you give everything at once and just let the it optimize everything for you and it just works out.
George Werrychire - Sat, 12 Oct 2019 11:58:30 EST 0zgeA32X No.38151 Reply
Hey OP. I've been messing around on Codeforces to practice algorithms and it's pretty fun and I've learned a lot. Of course I'm doing side projects as well since just competitive programming isn't too practical unless you become a finalist in ICPC or something like that. Of course I'm doing all of it in C++, following the competitive programmer handbook, and the book you mentioned previously http://iips.icci.edu.iq/images/exam/DataStructuresAndAlgorithmAnalysisInCpp_2014.pdf
My question is, what do you think about OCaml, or some other functional language for competitive programming? I don't suppose you have much experience with that specifically, but I'm sure you've written hundreds of algorithms in OCaml, so I think you're qualified to answer. Also you mentioned doing some C++ resources, how would you compare them?
Shit Cribbleman - Tue, 15 Oct 2019 08:35:50 EST Jwq7K7iM No.38166 Reply
1571142950099.jpg -(20981B / 20.49KB, 480x352) Thumbnail displayed, click image for full size.
Really enjoying PAPL, but damn it must be stressful to take it at Brown. 3-5 days to do these tough assignments on top of taking other courses.
Fuck Pepperham - Wed, 16 Oct 2019 06:31:21 EST 21Ms4tmv No.38169 Reply
What's a good book for probability? Also, is steven skiena's algo book any good?
Fanny Winkinchidge - Wed, 16 Oct 2019 19:16:54 EST IucQNcWV No.38172 Reply
Can you recommend something for a person interested not in the reverse engineering side of security, but malware and vulnerabilities, finding 0days and that kind of stuff? Thank you in advance.
Henry Biddlespear - Thu, 17 Oct 2019 03:50:21 EST jZVSOOyO No.38173 Reply
It's nice that you did all that, that's a lot of stuff to do. I don't usually end up doing that much work and you're pretty active with your self. That's a lot of investment you've put in yourself. It's a positive that you've manifested all of this benefit for yourself. Live on with the self care you practice. You are a model to me. I am beyond inspired here. I am at the precipice of getting into a 3 year commitment myself. Who needs motivational videos now? It was described as being what is not real but there is actually a sea of never ending motivation that I'm riding on now having encountered this production you've made. My present capacities are so boundless. I am moving to a superior place. There's no way I would slow down today. lol I know I am at a state of being unequivocally pumped.
Albert Sevingstock - Sat, 19 Oct 2019 00:54:14 EST x6K3CZQk No.38174 Reply
1571460854813.gif -(36875B / 36.01KB, 400x266) Thumbnail displayed, click image for full size.
From my limited experience, they allow Java/C++ in competitive programming, but everybody tends to use C++ because the C++ STL and #define macros makes it easier, and you can mutate everything willy nilly like strings. From what I know you only ever get a choice of C++/Java for whatever reasons, it's just the way it is. The judges may not even know OCaml and hand you a TLE for some bs reason too so it's just standard to go with C++ and push some highly buggy, highly mutated (strings mutated to hell) solution. Speaking of, if you look at CMU's codeforces problems: http://codeforces.com/group/KIrM1Owd8u/contest/256509 these are all easily solved with Wilberger rational trigonometry/geometry, esp A, B and C are absolutely trivial to implement using Wildberger meme math though your answer would be wrong as it would be a rational fraction (spread), not an angle, and automatically fail but essentially it would be the same answer just encoded differently, but alas.. Problem C is so trivial in Wildberger meme math your entire time would be waiting for the compiler to finish. I'm at a loss to answer why competitive programming would be useful besides applying to GeoHot's company and impressing him with your ability to mutate strings very quickly. Nobody anywhere writes software like that but it is fun to crush your competition and see them driven before you which is why I guess it exists. My only recommendation is do that MIT course on performance engineering https://functionalcs.github.io/curriculum/#orge1d5930 there's a link in the lectures to a gitbook filled with excellent info, even how to optimize interpreted programs, all the tricks you can do with certain processors, etc. Then go through Daniel Bernsteins personal site and look up his talks, anything to do with optimizing compilers or optimizing their new(er) post quantum cipher, tons of information there. Lately since I've been doing the math meme site, I've been sucked back into djb posts and papers/talks which are unreal how detailed and absolutely massive they are, he routinely writes enormous papers on message forums for the crypto forum working group and often these are tangents going into compiler optimizations. Anyway the same professor from those Brown PAPL/HtDP book also sits on the OCaml compiler group or w/e it's called, and has done a lot of really interesting optimizations you don't see elsewhere. OCaml is truly one of those languages where you can just naively write programs and magically it will run heavily optimized though of course with many caveats (which you will read about in that MIT course).

Yes, they weren't doing any marketing when they called it 'accelerated', I had to re-do Nile completely when you come to that other assignment where you need to add yet another feature to it (I think the map reduce assignment) as my refactor completely failed under their restrictions, since I use Pyret and not an easier language with a full library available. Of all the intro to computer science courses I've taken it's the only one where you get almost the full formal definition of Big-O. They usually hand it off to 'a later course you'll do on algorithms'. Also your pic, those Calculus lectures I did with my copy of Thomas' Calculus, and they're fantastic, but had to discard them as I couldn't figure out a way to digitize my copy. I thought about buying the classic version off Amazon and sending it direct to a destructive book copying service but there's copyright problems involved and while I could run the pirate compsci meme list with all stolen material it's actually harder than you think, I already get problems just simply mentioning libgen, not even linking pdfs. 'But you could host in School or China' sure and I'd run into other problems, like being totally delisted by google which I already was with a previous site. This is why I link the Wikipedia version of Libgen, also because their domain changes and most people around the world have problems with the .is domain. I can't remember which but one of my sites is still getting hammered with lawyer takedown notices for a direct libgen mention I'll fix sometime before I'm delisted again.

Did you not see the CMU 'math for ML' section? It contains numerous probability lectures. These are long videos but that's because students are working on problems so you can skip hours ahead after you've worked them. They use the same text that MIT OCW uses, which is this course: https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-041sc-probabilistic-systems-analysis-and-applied-probability-fall-2013/ and also I've done the Ryan O'Donnel pdf on Discrete Probability, some Knuth martingales, and the Wildberger lectures on probability so I really don't have any insight into Feller's theory all that much though I did work through a lot of it but in hindsight my intuition of what was going on was wrong, so I don't recommend Feller though everybody else does, but I suspect they either did it with a TA helping them or didn't actually do the two volumes. That MIT course is excellent, when you're stuck on a problem, you can click a help button and a TA walks through the problem solution! Every course should exist like this. I also find it interesting MIT thinks probability is so critical to learn that the only other 'scholar' version of their electrical engineering OCW content is a probability course.
Albert Sevingstock - Sat, 19 Oct 2019 00:58:26 EST x6K3CZQk No.38175 Reply
1571461106813.jpg -(61330B / 59.89KB, 1003x762) Thumbnail displayed, click image for full size.
What most 'crackers' do, is they wait for a software patch, run bindiff and just figure out what vuln was secretly patched in said proprietary software, and exploit the absolute shit out of that becuase they know proprietary software takes forever to do security updates and there exists millions and millions (perhaps billions) of unpatched systems out there. I read the other day some router company straight up told their customers there would be no patch for a major exploit going around, though I can't remember who it was, but who cares they're all equally awful.
This is terrible yet perfect advice: https://medium.com/@homakov/how-i-started-in-web-security-400b80824e86
>So how can you start in security? Security of %thing% is basically finding logical flaws in implementations of %thing%. Hence to find flaws you need to learn everything about %thing% you want to exploit first.

Otherwise the art of software security assessment book, combined with going through the SEI CERT 'safe' programming guides for either Java, C or C++ is likely how you would find '0 days' meaning exploits nobody else has released yet or patched and you're either brokering to TheGrugq on twitter who turns around and sells to an intel agency or you sell to some criminal group to pay yourself out. From what I know (this is no longer my field so grain of salt) what they do is now primarily is targeting entire architectures, making up hacky VMs and then blasting them with something like SUPERCOP daniel bernstein's crypto test bench (but also tests inputs). They also run SAT solvers and 'oracles' (you learn this in PAPL) in order to find logical flaws in programs, and then design ways to exploit them. Again the best way into this I would say is daniel bernstein and his massive knowledge he drops on mailing lists and in talks with Tanja Lang. Both of them are probably the premiere hackers of software without actually selling anything to intel agencies because they audit crypto and post their precise results and methology, all of which you can research yourself and try, which again loops back to Egor Homakov's statement that learn about %thing% and you will break %thing%. Bernstein already broke numerous ciphers in the NISTPQ competition just finding logical flaws in their proofs that make assumptions, ergo unproven conjectures. The best way to learn this in my opinion is get a job anywhere doing CRUD programming, and get that book 'blackhat python' and 'greyhat python' not because you're going to use python, but because you're going to make your own toolsuite in order to start breaking software. Start to do this and just fire it up to higher ups and tell them 'hey, make me the security """team lead"""'. They will, and then you can get into places like NCC group, or the numerous other consultancies, and you just learn your face off for a year or two until you go into private consulting and finding 0days yourself.

It's all about the routine. Do the same thing every single day up to a point, and then allow for chaos. But everyday you should get up and have a precise plan what you're doing for X hours. After who gives a fuck but that daily anchor is not just a good idea, it's a proven idea https://dailyroutines.typepad.com/daily_routines/artists/
Fanny Brendlehood - Sat, 19 Oct 2019 07:26:01 EST jqCPS3kp No.38176 Reply
Why do you have these pictures of professor Shriram?

Lately I've been wondering what to make. I've been doing all the class assignments but I've never built anything for myself. I can't think of anything nontrivial that people would actually use. Any ideas? Also, do you think contributing to open source is a waste of time? I'm curious if for example I go contribute to Jane Street open source, would that help me if I applied for a job there down the line or is it just free labour.
Cornelius Snodfoot - Sat, 19 Oct 2019 22:38:16 EST x6K3CZQk No.38181 Reply
It's just a meme, I actually think he's probably the best lecturer around from all the different courses I've done. As for building something, since this is 420chan, all those US dispensaries that use software like 'Leafly pickup' pay out the ass to use it, and literally all it is, is their current menu where all orders are sent as pickup/takeout. Seems like anybody could come along and make what they do much better and less expensive/complex. For example take the site deal dash, and write the site dope dash. The winner goes to the dispensary in person to pick up w/ID and pays directly. You make money selling the bid packs and advertising.

Open source is how I learned to write real software, because somebody looks at your code and critiques it, so you get better at writing software. You also get direct feedback for your feature from the users if it was shit or not or if they found bugs. Repeat this many times and presto you are now a 'professional developer'. It would probably be very difficult to just jump into JStreet's open source projects compared to say https://www.codetriage.com/ and starting to solve issues in a large project with thousands of open issues. Completing many of those issues, somebody will almost certainly contact you with contract job offers if your github profile has information on how to hire you. This will be easy short-term paid remote work. Get paid to learn, then try JStreet's open issues if they have any.
Charlotte Biffingmeck - Sun, 20 Oct 2019 07:36:10 EST Sat7HX9R No.38185 Reply
>compiler writing is lucrative
Are you sure about this? It seems to me that people are making new languages just for the sake of making them, not to actually improve upon something. We have hundreds of languages in use today with a wide range of applications, surely there is no need to create any more.
Albert Drattingway - Sun, 20 Oct 2019 17:49:51 EST Wh7cU0nG No.38189 Reply
Just wanted to say that the wildberger resource are pretty great! Especially the rational trig ones, dunno why others call him a crank though
Nathaniel Gankinnog - Mon, 21 Oct 2019 06:12:08 EST vZ4zomq9 No.38190 Reply
1571652728417.jpg -(79099B / 77.25KB, 1280x720) Thumbnail displayed, click image for full size.
>rational trig ones
The ones from 2007? I got a bit lost into the 6th vid or so, but i really enjoyed the Math foundations A and the math history vids.

also, how the heck am i supposed to memorize the antiderivative and derivatives of 100 different trig function combinations? Just look them up as i go along working through the calc textbooks?
Nathaniel Honeyhood - Mon, 21 Oct 2019 08:33:35 EST Wh7cU0nG No.38191 Reply
Is it a good idea to start with a research paper to learn some cool stuff? I.E. machine learning?
John Sisslechock - Tue, 22 Oct 2019 10:53:38 EST x6K3CZQk No.38196 Reply
Compilers as in research like NLP, static analysis, what these guys do by taking any SQL syntax and optimizing it http://www.compilerworks.com/transpiler.html and many other uses. For example I wrote one when working at that lab in university to run static analysis tools for optimization reasons as we were working with gargantuan amounts of genetic data. Djb also has many talks and papers about doing your own branch prediction/optimizing compilers to avoid CPU side channel leaks. Now that we live in a post spectre/meltdown world I imagine great interest in compiler research again.

That one lecture where he teaches you the inductive definition of numbers (called extremely big numbers I believe) you are learning how to prove things with induction. You can go from that lecture over to an MIT video on proof by induction and likely open up Robert Harper's book on programming languages and begin to prove judgements which is why I shill the wildberger lectures.

To learn 'real trig' after there's a book Wildberger also recommends: A course in calculus and real analysis
Book by Sudhir Ghorpade as it assumes no trig background, and uses highschool algebra to teach you analysis up until you learn transcendental functions then you can start using them for things. It's a hard book though, probably will have to go through some of Knuth's writing on how to manipulate sums and logarithms in TAOCP or Concrete math before trying it, plus do more proofs. Incidentally this is exactly what I'm doing with the meme math guide.

As for his reputation he hates 20th century math ideas like using set theory to define all of arithmetic. This of course gets translated to 'he denies infinity!' in the misleading discourse we now enjoy on social media. That in turn gets translated to 'he's a crank, don't listen to him' by very, very angry people who buy into the misleading discourse. All he's doing is showing yet another school of math, like all those CMU profs who belong to the school of intuitionism a branch of constructivism.
Fanny Bardson - Tue, 22 Oct 2019 17:49:48 EST +Mk9y141 No.38197 Reply
OP do you have any favourite podcast? Or other recommendations on what productive to do while on the go or working out.
Doris Cracklewater - Thu, 24 Oct 2019 09:44:35 EST x6K3CZQk No.38202 Reply
Nick Bostrom famously will listen to lectures on 3x speed while exercising but I can't do that since I have to focus on the exercise. You could buy a 40" flatscreen TV for $120 on amazon, MacGuyver some kind of arm for it to hang in front of you while you do exercise and watch a lecture if you wanted. There's people I know who program on those things with a hundred windows open but I read too many Matt Might RSI and ergonimic articles to do that. The only podcast I used to listen to was the type theory podcast but I believe that guy is actively involved w/Robert Harper in getting a PhD now so doesn't have time for it anymore. When I had to commute to that university everyday to work in the lab tho I'd often print a paper. Then at lunch I'd read it again. I'd print it out because 9 times out of 10 when I pulled out my phone to read I'd just end up doing some bullshit like checking texts/emails or other time sinks. I started doing this because the post-doc's I worked with at the time were absolute machines at devouring papers and books usually reading and rereading a dense paper with theorems/results everywhere (meaning you have to check those), every single day somehow and they also always printed them.

Speaking of working in a lab, my circumstances recently changed where I can make a direct run at jstreet in NY or even go back to research programming at a university but this time in the US. Quantum algorithm simulations have exploded recently, and that Ryan O'Donnel course on Quantum Information arch http://www.cs.cmu.edu/~odonnell/quantum18/ isn't impossible to do and doesn't require knowing anything about physics, it's much like writing algorithms for x86 you don't have to be an electrical engineer. Daniel Bernstein's page has also been a mine of information lately as he's been breaking NIST submissions for post-quantum crypto ciphers just by looking at their 'security proofs' and finding conjectures they didn't prove. His IETF mailing list emails have gone up recently too, these are always interesting, he will casually give a 10 page thesis on analyzing a side channel, or where he discovered conjectures and assumptions in a security proof as a message list post.

Anyway since my circumstances have changed I need to accelerate the meme math guide, which surprisingly is working out better than I thought, and I need to rewrite a bunch of Unix programs so I can remember how to do OS concurrency again, as Jstreet does a lot of this work, like writing their own MTA in OCaml for some reason. Probably will have zero free time from now until December
Doris Cracklewater - Thu, 24 Oct 2019 11:00:04 EST x6K3CZQk No.38203 Reply
Anybody interested in high performance functional programming, here's how Jstreet parses message data in a live exchange https://www.cs.uoregon.edu/research/summerschool/summer18/topics.php in the lecture 'Typing speed: how rich types enable performance engineering'. There's microsoft content in 2019 OPLSS now too, like proving low level code with F*. You can extract wasm or ocaml directly from F*.

Also, if you hate everything OCaml and Unix there is also F#/.NET, which is yet another ML, and probably has the cleanest most sane documentation and is generally super simple to program enormous programs with since you get ML family modules which you can compile seperately and |> pipeline operator. If you think all these courses are BS definitely try modules sometime. Need a new feature you just bolt on a module and it all 'just works'. Refactor? Try to compile. If you wrote your types like they do in the youtube lecture 'Effective ML' refactoring is minor job the compiler catches for you.
Graham Blecklefoot - Thu, 24 Oct 2019 13:31:16 EST Jwq7K7iM No.38206 Reply
1571938276373.jpg -(109611B / 107.04KB, 1280x720) Thumbnail displayed, click image for full size.
>Anyway since my circumstances have changed I need to accelerate the meme math guide
Please do, I need a brainlet path for learning proofs. I bought how to prove it 3rd edition, and am going to try the book you recommended in your original post on 8ch, An Introduction to Mathematical Reasoning: Numbers, Sets and Functions by Eccles next week.

I could barely do 1/2 + 3/5 in the begining of this year and have made my way up to integration with U substitution with chain rule with trig functions and what not.
Mostly due to khan academy (started at pre-algebra), then a little of Algebra & Trigonometry by Sullivan, tried the Gelfand books but they were too hard and seemed like a meme. Been using Thomas Calc 9th edition with the 1970 Herbert Gross MIT lectures and study guide recently.
Graham Blecklefoot - Thu, 24 Oct 2019 13:32:22 EST Jwq7K7iM No.38207 Reply
lol filter. that 4 plus 4 channel
Sophie Dungerkad - Thu, 24 Oct 2019 13:59:52 EST NbzHyz1/ No.38210 Reply
Unfortunately, the ML family module system was stripped out of F# for better compatibility with the rest of .NET's object-oriented spaghetti architecture.
John Simblehall - Thu, 24 Oct 2019 23:02:45 EST x6K3CZQk No.38212 Reply
I don't post there, somebody likely cut + paste an early chan post. I'm not very political, in fact I don't even watch the news http://www.aaronsw.com/weblog/hatethenews with exception of reading journals on sci-hub about foreign policy and the Economic Journal from Oxford every so often. I follow these and some other journals and any of their updates is shit into an emacs buffer I look at now and then to see if there's anything interesting worth plugging into sci-hub otherwise I just rely on interactions with people everyday to tell me what's going on instead of wasting time reading and watching media. If it really is important somebody will tell me but almost everytime it's not important, just another overhyped tabloid story that disappears after a week or so. These journal articles will go into details on the current state of each country, like say fuel and oil internal conflicts in Libya with most of the resources disappearing into the black market, with analysis on said black market who is getting paid. Months from now the civil war will explode again because of it, and the regular media will have an extremely shallow take, likely framing the conflict in domestic talking points to assign political blame to somebody nowhere near Libya, or not even mention the fuel problems internally, whereas you will know exactly why it's happening. Same goes for the Donbas conflict or examining the statistics why most ISIS recruits per capita are from Trinidad (simply because of superior recruitment strategy, not any kind of religious reasons). None of this is ever covered in the regular media and even when they pilfer journal articles they do a half assed job of properly describing the paper, which I believe is on purpose since they don't actually care, it's all about props to push domestic talking points. News/media was another thing I had to give up and like an addiction after I detox'd I found myself free and with a lot of extra time. I remember thinking I absolutely had to read a pile of newspapers and read junk like the Economist in order to be an 'informed citizen in a complex world' but really I was sabotaging myself and becoming less informed.

As for proofs I still don't really have any idea where I learned them, I think it was just over time trying to do them, seeing the answer, then transitioning to trying to do them, not having the answer and then asking people on stack exchange to review them. Somewhere in there I learned how to do it but I now think it was largely the process of asking on the internet mathematicians to review my logic because it's very, very easy to fool yourself into thinking you proved something. Knuth's ultra terse Mathematical Prelims in TAOCP, and Concrete Math are both pretty good at learning a certain way to do proofs, provided you have the discipline to to immediately look at the answers everytime. There's just so many exercises you eventually start seeing the patterns and picking it up. Wildberger lectures are good for this, the seemingly easy proofs he does in like the 3rd or 4th video is what you end up doing in some mathematical reasoning books I read. Since I'm a wannabe computer 'scientist' and working programmer, almost all the math I do is with libraries like OWL. In the VanDrunen Discrete Math book he teaches you how to translate equations into functions and you program proofs in that book. You could, or with another language, do the Thomas Calc book too with some kind of scientific library(s) that come with your language of choice. For example Jupyter Notebook you could easily graph everything if you wanted as you go through the book and play with the graphs to see how they change. Those 1960s calculus lectures are pretty good though, the course assumes zero background for the most part and actually explains notation. 'Calculus is the study of zero over zero'.

Shows how much I know about the current state of F# somebody I work with was shilling modules in F# in 2017
Ian Sirrykid - Fri, 25 Oct 2019 00:02:07 EST s0Gtv7r2 No.38213 Reply
Is it a bad idea to proceed to Analysis textbooks without Calculus background? I.E. Vladimir Zorich's Mathematical Analysis
John Simblehall - Fri, 25 Oct 2019 10:57:03 EST x6K3CZQk No.38214 Reply
You can do both at the same time, look up some Calculus lectures when you reach those chapters. Briefly skimming this Zorich book it looks like a natural sciences/physics text . If for whatever reasons you want to do that book then as you read through the first 4 chapters or so, also read through the beginning of this CMU text which will teach you an algebra crash course, and at least cover more counter-intuitive things like cardinality of sets which is only a supplemental in that Zorich book from what I can see. It will also teach basic proof by induction which is very briefly covered in Zorich's book http://www.math.cmu.edu/~jmackey/151_128/bws_book.pdf

Skimming the book, it does annoying things like using limits before defining them. So you'll have to teach yourself limits https://youtu.be/K4eAyn-oK4M The only intro analysis book I like is: http://www.math.iitb.ac.in/~srg/acicara/ the second edition (free on libgen) because it assumes no trig background, so will teach you from scratch the logarithm, the exponential function and show you how they aren't algebraic (transcendental) and does so using classical analysis. Read Wildberger's review of it on that page and the preface. I'm going through it right now every couple of days to see how suitable it is for the meme list but there's definitely parts that are difficult and make assumptions on prior knowledge, but I guess that's inescapable in every math text. In general I don't like real number or complex plane analysis, so I've only done the bare minimum of it which is the chapter on Real number constructions in the Homotopy Type Theory book and some Tao analysis. What's interesting in the HoTT book is the rational field is literally hand waved as being absolutely trivial to construct, it's operations trivial to prove and HoTT has no problem being used to define all the operations there. Then Dedekind cuts have an entire chapter pointing out how tedious and problematic they are, with circular definitions like the distance between two real numbers is another real number. I'm just a pleb who did some math, but if you pretend the reals and complex plane don't exist, you get rid of 'distance' and 'angles' and replace with Wildberger abstraction like 'spread', then type theory as foundations of mathematics works out great and you can go about using their proof assistants on all kinds of things in the rational field. When you introduce the Reals it kills the theory. I sometimes wonder if Wildberger is right but I don't know nearly enough.
Cedric Hammleledging - Fri, 25 Oct 2019 18:49:16 EST mIm9WWDL No.38215 Reply
Why don't you release the math page and update it incrementally? Just like you did with the web dev notes.
Albert Chivingdire - Fri, 25 Oct 2019 21:23:25 EST x6K3CZQk No.38216 Reply
I will, just a lot of materials I had to trash because they aren't needed. If anybody here has read the OCaml Functional Datastructures book, you'll see the author can design and analyze algorithms while throwing out most typical algorithm text (CLRS) math, such as manipulating inequalities to find a constant. This is generally what you do in the 'field' too. I'm also from the background of SICM, and Sussman's other book on Functional Differential Geometry where he programmed math. In the VanDrunen book, that's exactly what you do too, and even in the Gilbert Strang MIT calculus book, in the Brown Linear Algebra course, and in CMU's convex optimization and CMU's 'math preliminaries' for machine learning course, so naturally I'm trying to see if you can do all of this preliminary math in a programming language because it's generally how it's done these days. So I might try to combine all these things and see what happens, or it could not work and I could trash it all and walk through TAOCP preliminaries (including the new one: prelim redux w/probability). I did however manage so far, to do 1/4 of Knuth's chapter of summation manipulation in Owl https://ocaml.xyz/ which was surprising I didn't think it would work.

Again if anybody here has a shit math background, the Wildberger playlists plus that VanDrunen book will cover almost everything you'll need to know in everyday programming. It's available now on libgen for free. If you do that book it will cover almost all of 15-150, all of 15-151/21-128, the Brown lectures will make sense where he talks about Big O (if they don't already, it's pretty easy when you get it) and solving recurrences. There's no reason you can't do 15-251 after, or MIT's 'math for computer science' and blitz most of the material since you've already done it, or start a difficult complexity theory undergrad course by Ryan Odonnel. If you hate Python do the Linear Algebra brown course in Owl library. If you know basic linear algebra you can do that Tanja Lange course on cryptography with introduction to post quantum cryptography she reposts the lectures every year. Wildberger even has a linear algebra crash course in his history of mathematics playlist IIRC, and a probability crash course, there's no reason to wait for me.
Cedric Bardstone - Sat, 26 Oct 2019 01:47:08 EST s0Gtv7r2 No.38217 Reply
Will try doing that. Btw, how do you balance studying multiple topics like these?(programming and maths) Esp. for a college student with a curriculum full of retarded GEs?
Jarvis Fimmerdit - Sun, 27 Oct 2019 11:56:07 EST NhITR7br No.38219 Reply

Have you come across professor Leonard? His calc 1,2,3 playlists are a goldmine for those grindy weed out classes. He's super pedagogical and embeds problems from various textbooks -- I used to grind out three lectures a day, completing the entire calc series in 2 months while at uni. Combine that with "blackpenredpen" 6h "100 integrals/series/derivatives".

I recently finished most of 15-151. What has your experience been with 10-601? Would it be a good idea to set aside a month to grind 18.02 and 18.06 (vector calc and LA, using MIT's psets and various textbooks)?
Jarvis Fimmerdit - Sun, 27 Oct 2019 12:02:15 EST NhITR7br No.38220 Reply
I'm just starting 10-607. Also realised I don't have any prob&stats so I'll grind out 6.041.
Angus Cipperwater - Sun, 27 Oct 2019 14:18:53 EST 7bF8rIgQ No.38221 Reply
I have been thinking about the Hal Abelson quote from the first chapter of SICP, that OP put in the start of the section on Computer Systems & Architecture. It seems profound and ahead of it's time. Do you gyus think never learning the internal representation of floating point numbers, the ram model, x86, operating systems etc. is gonna be detrimental to future learning? I might leave all of it as a black box and focus on the beauty of fp instead.
Hamilton Firringhall - Sun, 27 Oct 2019 16:32:45 EST mIm9WWDL No.38222 Reply
You'll have to learn those eventually even if all you care about it FP. For example learning about the OCaml runtime. And some topics you straight up won't be able to study like operating systems, compilers, reverse engineering, cryptography, databases, etc. But there's no reason not to, as the 15-213 course is really good.

Good for you OP, I hope you manage to get into Jane St. I myself will be applying for an internship there next year. Not sure if it'll be to the New York or Hong Kong office though.
Ebenezer Bobberbury - Tue, 29 Oct 2019 14:46:08 EST afYdzNrx No.38225 Reply
OP, when it comes to ergonomics, what's your opinion on Emacs keybindings? I've been using vim (mostly as keybindings in visual studio code) and have been thinking recently about switching to Emacs. Emacs seems to have good support for languages that interests me (Haskell, ML, lisps) and I want to use org-mode, so I want to give it a try.

One thing that scares me are keybindings and possibility of RSI (e.g. emacs pinky). Other than that it seems to have very steep learning curve. Should I use evil mode? Or maybe go full emacs? Do you think it is good investment?
Samuel Dondershaw - Fri, 01 Nov 2019 20:25:04 EST x6K3CZQk No.38229 Reply
1572654304104.jpg -(8315B / 8.12KB, 225x300) Thumbnail displayed, click image for full size.
You don't have to use the keybindings, emacs has a GUI and pull down menus you can use if you want. That's how I learned, just installed vanilla emacs, and ignored all the key bindings using the GUI (which also tell you the keybindings, so eventually you start using them for repeated commands). You can also trivially set any key to be the CTRL and meta key, though I bought several meme keyboards like HHKB2 and Unicomp's Sun unix keyboard to avoid emacs pinky but I've never had a problem. Forget the myth that emacs has a steep learning curve, it's the easiest editor you'll ever learn. You only need to know major and minor modes, how to install a package, how buffers work (trivial), and that .emacs or it's varities is a program that runs before the editor starts not a 'configuration file'. You can edit anything in emacs using the GUI too under options, then look at the .emacs init file(s) after and see what it's added, and learn emacs lisp by doing this. Almost all the tutorials online for emacs are shit, the only one I like is the built in one you run when you first install, and the chapter out of 'Clojure for the Brave and True' (IIRC that is the name). Get that book off libgen and look at the emacs chapter it will teach you anything you need to know to use emacs to be useful but you'll prob just figure it out yourself dicking around with the GUI.

I put that quote in there to remind people that there's the whole field of complexity theory and quantum information theory where you never need to know a thing about x86 architecture which I personally despise but like everybody else we're forced to work with it for now. CMU's 15-213 course is technically a black box course, you're looking at everything from a programmer's perspective not digging into that much to internal CPU ops but everything has changed with spectre/meltdown you now need to write your own branch code in some fields (mine anyway) and handwrite compiler optimizations. It's going to take them a decade or so to fix it, all of us are just hoping they abandon the arch and push something new. Anyway, if you don't want to learn floating point (an active research field which could tomorrow completely change, even one of djb's new post-docs is working on it in France) my suggestion is just get into complexity theory, you don't have to know anything about programming, or do that Ryan O'donnell quantum information theory course. You don't need to know shit about physics. They are desperate for people to write quantum algorithms for the tiny qbit virtual machines they're running right now.

Yes, I've seen his remedial calculus courses and they are often hilarious. "If you answered this exercise this way... YOU SHOULD BE ASHAMED because I already told you it should be this way". The reason I've chosen the meme math courses that I have is because my meme list is directly targeted to people like myself: either flunked or kicked out out of university for something stupid, a self learner who doesn't know where to start, somebody doing something else besides trying to conform to government examinations. His courses are great for conforming to official exams and he teaches it well. My meme list is different, it's for people who have the time to learn it all from the ground up, because they're interested and not forced to do it. My new math meme list is combining Terence Tao w/Wildberger because his Analysis lecture notes as I remembered covered almost everything Wildberger talks about, building the naturals and the integers and the rationals from scratch. To me that is how to learn weird esoteric math, how the fuck are these abstractions upon abstractions actually working at the basic levels. You see their constructions, it helps you with the later abstractions. Well for me it did at least and I'm just a pleb like everybody else so maybe it well help them too to learn these things from scratch.

As for machine learning, try the CMU math background course https://www.youtube.com/playlist?list=PL7y-1rk2cCsAqRtWoZ95z-GMcecVG5mzA It's still open on YouTube. Everybody should be archiving and torrenting those lectures, they are great when a premiere professor of that field is literally handing you the background needed. People shoud know that course pre-reqs just mean you are familiar with a topic, because that course will be on a deadline and you need to know it. If you're doing it by yourself, there's no deadline, you have all the time in the world to backtrack and pick up vector spaces or bayes rules. You can just directly look these things up but if you were actually doing that course it would be too difficult to keep up but by yourself so they have prereqs but realize there really is no prereqs for undergrad courses. That course will cover the official definitions there's no reason you can't spend two or three days watching MIT's https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-041sc-probabilistic-systems-analysis-and-applied-probability-fall-2013/ which also has a new edx coming up in January https://www.edx.org/course/probability-the-science-of-uncertainty-and-data-2?utm_medium=affiliate_partner&utm_source=ocwprod-mit-opencourseware?utm_source=OCW&utm_medium=CHP&utm_campaign=OCW following the same book. Never be discouraged by course req, they are only for actual students taking the course who need to fire off assignments every week, you don't need to. They do that course in python, but if you translate their code to your language of choice (like say, OCaml OWL or Julia) you will really understand what's going on. That's another behavior I attribute my pleb learning of this material: translating it to another language. All that common lisp modelling I did of Concrete Math, all those OCaml modelling of machine learning courses, it I feel, helped me learn these things I thought were (at the time) impossible to learn with my background.

Speaking of concrete math, has anybody seen the concrete math companion https://www.cs.trinity.edu/About/The_Courses/cs2322/j-books/cmc.pdf if you do that Discrete Math w/Functional Programming course you can do the same thing in SML, but it will be much easier than that companion. In fact that's one of the reasons I got into Harper/CMU/SML was that companion trying to figure out Concrete Math. Pattern matching to glory.
Samuel Dondershaw - Fri, 01 Nov 2019 20:55:15 EST x6K3CZQk No.38230 Reply
Has anyone tried wacky Wildberger math with a precalc book? After doing his polynumber lectures I used them to destroy an Axler book filled with polynomial exercises.
Simon Biblingshaw - Sat, 02 Nov 2019 00:45:18 EST pu1j82o+ No.38231 Reply
Doesn't Tao's Analysis book require a background in Calculus?
Samuel Dondershaw - Sat, 02 Nov 2019 13:14:29 EST x6K3CZQk No.38232 Reply
Nope, any real analysis text will teach you calculus and trig functions from scratch. The Wildberger playlist A introduces calculus anyway so you'll know what a derivative and integration is. Tao's book is especially detailed you construct everything before you even see calculus, much like Wilberger's lectures. There's some calculus used as examples in the introduction, but you can safely skip it and start at chapter 1.

Whatever book or course you decide to do just follow this advice: https://www.math.uh.edu/~dblecher/pf2.html where if you come to a definition, write some of your own examples. Any proofs by the author that technique will likely be in most of that chapter's exercises, so mimic their technique. It helps to start with a well known book because lot's of other people will have done the exercises, which you can compare to yours, like if you wanted to work through Apostol's books and compare your proofs to somebody else's. You may have come up with a better proof. If you can program try to model the theory in the book to a very simple application. One example would be a linear algebra book, where they construct matrix operations from scratch. You could follow along writing your own naive library for these operations and then look at an official implementation to see how their library differs, which will be more generalized than yours and more optimized. Tao's book he constructs everything from the very beginning, excellent opportunity to write your own hacky/naive mini libraries then look at your language's source to see how they did it. That's what I did anyway and found it helpful.
Samuel Dondershaw - Sat, 02 Nov 2019 13:35:22 EST x6K3CZQk No.38233 Reply
Well I should say most analysis texts will do this, Rudin's text annoyingly dumps limit notation everywhere until page 83 where he actually defines what a limit is. Tao defines all of arithmetic from scratch and functions/limits before using them.
Augustus Crudgesadge - Sat, 02 Nov 2019 15:36:52 EST UYafWWOj No.38234 Reply
Those lectures are incredibly bingeable. Did all of calc1 in 4-5 days. Fast forwarding a bit on the early lectures. Good rec.
Pretty great for picking up trig and algebra as well since he goes over everything super carefully and since quite a few students forgot or never learned. Also a nice combination of students asking questions and him pointing out common mistakes. plus some fancypants math tricks.
But i'm getting a bit ahead of myself and need to go practice actually doing some problems rather than passively watching.

While wildbergers videos are interesting, i don't really feel like it sticks as well as leonard's. Probably because leonard does the problems step by step in real time, whereas wildberger just talks and points with his drumstick.
Hugh Snodham - Sun, 03 Nov 2019 15:21:25 EST x6K3CZQk No.38242 Reply
For sure they are great lectures but I didn't include them because of what you end up doing later as math gets more and more abstract. The main difference for me is Wildberger is setting you up with early pure math foundations, because most of the things you will be doing in undergrad math pertain to working out what arithmetic properties carry over to whatever ring/field or new object you're learning about such as carrying over to congruence, proving the commutativity properties of suprema and infima, proving N is a partially ordered set whereas Z is not partially ordered by divisibility, isolating the property of R that seperates it from Q, proving equivalence relations have similar properties to '=', coming up with new relation objects for inequalities then once again having to carry over and prove laws for that new lattice structure or whatever it is. So basically everything Wildberger is doing which is how to go from one object to the next like PolyNat, PolyRat, Fra, etc will directly translate to what you will end up doing in all undergrad math in the future whereas applied arithmetic and algebra tricks to simplify stuff they teach in Khan Academy and the like, you can just learn those things yourself as you go along doing exercises in these courses and books as you deduce and derive them from the laws of whatever structure you're working in because you'll be proving them a hundred times over, like how Wildberger proves them in each successive move to a new object or structure.

But of course if you like prof Leonard's lectures you should definitely do them however he has a 3 hr lecture on limits and their applications in calculus, but the exact definition (a sequence starting at some integer N and that is said to be epsilon steady for every index of that sequence > or equal to N) and proving them is covered by Wildberger, and that's exactly what you'll see in Tao's book, and then Tao will go through the limit laws like lim(a+b) = lim a + lim b, and you will have to prove these laws which is once again another example of 'here is a new object, prove laws of the previous objects we saw hold for these new objects' so Wildberger territory. In my pleb opinion Wildberger best sets you up for these things which you can watch as you do Tao's book.
Anon - Mon, 04 Nov 2019 18:38:11 EST UZdGYoMm No.38246 Reply
Hi OP, I am a current undergrad who is jaded with the cs curriculum at my uni. So I started taking math papers instead. They are better taught and more challenging too. My question is I am a self-learner and plan to learn what is neccessary to become god. Is there anything I should be studying while at uni to smooth the process?

I have recently been thinking of going into some field of ML, but it seems like that's what everyone else is doing. You seem to recommend complexity theory and q-bit programming, compilers etc. in your last few posts. What should I work towards so I can leapfrog the competition and be at the forefront of a new technology. I would like to be able to freelance or start my own business and I'm probably not cut out for academia.

I have been follwing the meme-list from the beginning, making slow progress but your words resonated with me so I have stuck at and finally learned to code, so thank you!
Hedda Tootwater - Tue, 05 Nov 2019 23:24:08 EST x6K3CZQk No.38247 Reply
I only recommend those because they're interesting to me, you should do whatever you're interested in. I also would be wary of predicting the future, what if in 4 years everybody is walking around with a hand held device with near instant bandwidth. You walk into a space and your device knows everything there is to know about that space seconds after you enter. You know what language everybody is speaking, where and what every object is in that space, what order is currently being prepared in a restaurant, which tables you can join and which are having a private conversation, what the music is that's playing, and the times when some event will occur in that space like a taxi is about to drive through. Imagine in that kind of world the demand for deep/machine learning customized algorithms. So the point is who knows what to expect, just focus on what you are personally interested in because you have to be driven by something to get up everyday and spend hours doing this.

As for freelancing, if that is your goal you should make it a priority and then strategize exactly how you will achieve it, and just like how Knuth/Dijkstra would break up a program into many tiny pieces that's exactly what you want to do for your goal, break it into little pieces you can complete week by week. Generally freelancers start at the bottom somewhere and apprentice, moving around different outfits until they feel they have enough skill and experience to start their own business, all while learning for themselves on the side. You put in very long hours every single day but you don't care because you have your goal, and every week this is helping you meet the goal. For example where I work. There are people here who put in years doing long hours for free just so they could set themselves up as a freelance proprietary market data source. By free I mean they would go to some other department and just hang out there for 6 hours after they finished, learning everything they could. This brought them closer to their goal, and so it made them happy even though they were essentially working 14hrs+ a day.. And now they don't work at all, they sell a proprietary stream of data for monthly subscription but to set themselves up with this lifestyle they had to put in the work and apprentice just like everybody else (mechanic, chef, security consultant). That's exactly what I do. Have a goal, how can you realize it? By learning from people with expertise in that field. So you work somewhere for a while until you bleed them of everything, move somewhere else, bleed some more, move again so everyday you get closer to the goal.

If I had to guess what would become in high demand in the very near future, I would say optimization because of many hardware problems that are not going to be fixed for years to come (spectre, meltdown, rowhammer etc). Natural language processing. Robert Harper's book on programming languages is also the only of it's kind, and every day there's more pressing need to build new domain specific languages like that typed network language in the OPLSS lectures or static code analysis to get around legacy protocol/code problems. Quantum 'virtual machines' are sort of a thing now too and will only get more popular and advanced before we end up building the real things.
Martin Beckleseck - Wed, 06 Nov 2019 09:44:31 EST r4mTrUVu No.38248 Reply
Its really tempting to quit my shit university now, but I know I need that damn paper. How do you manage multiple workloads OP? I literally can't stand our retarded curriculum and some shitty php projects.
Augustus Sembleford - Wed, 06 Nov 2019 13:52:12 EST E/kAXTw/ No.38249 Reply
Not OP but my approach is learning the curriculum really well and as quickly as possible. Stay on top of shit, and do as much as i can on the side. For me it's impossible to be neet and do 10 hrs of CMU courses a day. I would love to and I've tried, but shits too depressing and stupid things get in the way. On the other hand I can supplement my college workload with fun and inspiring material, consistently improve on it, while gaining confidence by acing exams and earning a little as TA. That's the advantage of being at a bad school, you have so much time to yourself. I used to go to a top 20 school, and you gotta be laser focused day in day out, I had two weekly reports + coding/math assignments that had to pass auto graders every week in order to move to next semester. Where I am currently is a fucking joke, but it gives me time to completely surround material and learn it really well. And even though you are working in joke languages like java or php, there's still tons of language transfer. You wouldn't become a good programmer just because your school worked in lisp/js/haskell we, it doesn't really matter, it's about developing a good attitude and building on your understanding, not learning relevant tools. >>38248
Cornelius Muddlesidge - Thu, 07 Nov 2019 09:03:09 EST CjFq6Q/q No.38252 Reply
Can you explain in more depth what is so great about OCaml modules? Are they just good for rapid prototyping or more complex software as well? How does it compare to OOP in C++?
Eliza Huttingfuck - Fri, 08 Nov 2019 19:53:38 EST x6K3CZQk No.38255 Reply
Modules are a mix of inheritance/classes/mixins/interfaces/encapsulation but with very fine grain control. You can also compile them seperately, create a hierarchy (a tree) of their priority and prove they are correct before even running the program. Mixins are best described by Prof Shriram's paper when he ported them to Java in the 1990s with the author of the Little Schemer books (interesting paper if you read it). You have a class of doors, you want to extend it. No problem you write the new class and then 'class DoorA extends DoorB'. But what if you have something structurally similar to a door but with enough differences that you need to write an entire new class for it. Mixins solve this problem, a function that 'parameterizes' the modules so you can have extra things without needing an entire new class. Modules in ML family languages (that implement them) make doing all this very easy as they are built-in with exception of first-class modules, which I've never used for all the reasons in RHarper's pfpl book, and are designed in such a way you could simply break up your program into tiny pieces and just write the modules, compiling them all seperately, and string them all together at the very end much like how Knuth/Dijkstra used to program.

Imagine a massively, massive (did I put enough emphasis on massive) globally distributed system for handing out quotes. All these quotes depend on various different dependencies with so much complexity your brain will explode. Now you need to write a system to hand these out. You could do it with classes and inheritance/mixins but are you sure you got everything correct? What if there's an edge case where millions of dollars can be lost within seconds you didn't anticipate? Modules help reduce this kind of risk. 'Let moduleA be M in the following tiny scoped function' fine grain encapsulates your opening of a huge namespace. The signature/interface helps you to develop a contract that proves what you've done is correct but at the same time you can abstract the hell out of these signatures, meaning rapid prototyping.

tl;dr if you are by yourself, or in a small group, the kind of modularity to control complexity afforded by ML family languages that implement it are a godsend, especially when you need to drop in a new feature. Refactoring is essentially just handled by the static analysis of the compiler. I also haven't really even touched the many more features of these implementations in SML/OCaml, for that you'd need to read RHarper's pfpl book to really gain an appreciation for how many major and minor problems they are solving for you that have plagued software development since it's birth. Cornell's new 2019 OCaml book also has a very good writeup. https://www.cs.cornell.edu/courses/cs3110/2019fa/textbook/modules/ocaml_modules.html but Robert Harper will hand you old papers from decades ago on how hard of a problem this can be. Java/C++ really hasn't solved it, you still need to keep dynamic state in your head. If you can do that while disseminating thousands of different quotes each with highly complex dependencies you should be working for Rentec making milions a year.
Eliza Huttingfuck - Fri, 08 Nov 2019 20:16:53 EST x6K3CZQk No.38256 Reply
I hated my curriculum in 3 universities I went to and dropped out (kicked out of the first for idiocy, dropped out of the second because I was poor, dropped out of the third because I lost interest). One was a grad school as well that honestly shouldn't have accepted me but did, ,where I dabbled in optimization (in hindsight, I should have stayed) but I just couldn't do it any longer. I also signed up to the University of the People for lelz and made it to second year before I had to drop out there too, but I don't endorse them because they don't have regional US accreditation. Anybody with questions about UoP I can answer them, even was a defacto TA for one of the courses. They do have national accreditation, so technically you could get a degree there and then say apply to CMU's campus in Portugal or Australia or somewhere but most school's in the US won't accept it for grad courses. I've posted about this on lesser chans, now banned because retards swallowed memes as reality and shot up meatspace.

Anyway what I didn't know then, and now do, is that if you can handle all the terrible marketing of Cal Newport's book 'How to succeed in College' (IIRC it's called that, google it) it honestly does work. Most of what I do I copied from that guy, even though he kind of delivers it like a sales pitch or turbo cringe Ted Talk, the advice does work. To handle a ton of credits I just made sure the work was done. When class was over I'd go to the quietest most remote library on campus like he did, and go through the lecture notes, proving everything myself. Was it in lecture? Can I prove it myself on cruise control? I'm done for today. Then I'd go back home and have to write that massive essay for the typical humanities electives you're forced to take, but for me this is simple to do.
Eliza Huttingfuck - Fri, 08 Nov 2019 20:29:59 EST x6K3CZQk No.38257 Reply
Going to shitpost here for a second since I have free time, about the kind of shady data sources people are selling in fintech that blur with security. If you have any kind of data on a company, like the famous example of the fedex labels that indicated how many units apple had shipped of a specific device, you are selling this data as a proprietary feed for a ton of money. This is also knows as industrial espionage basically. I'm always coming across new proprietary data that is an employee of a major corp who has some kind of insider knowledge but can't directly trade on this information, so they're just trading it as a data feed.

As for the Quants I bleed for information, something I never knew was the noise in various strategies like arbitrage is too much to run any kind of reliable machine learning algo on. This is why all these guy's have stats PhD's, because machine learning is dealing with problems with a highly complex structure and low noise, and graduate level statistics is about sifting through the noise like trying to account for every single source of bias. The more I know about statistics, the more I realize it truly is the most difficult branch of mathematics. It's an art form from the future if you can pull off identifying biases and sifting through the noise essentially handling complexity like it's nothing. Formulating any kind of hypothesis from 100+ data feeds and deriving a trading strategy from that is pure magic. That said the data feeds, where actually most of the money is (selling them) is entirely derived from machine learning and nlp techniques. There's fucking people fucking analyzing space photos of parking lots worldwide or oilfields in order to quantify and sell their predictions, for more money than you and I and everybody else on this site combined make yearly. Truly a strange industry that I admittedly know nothing about, I'm just here to design obscure datastructures and learn while getting paid.
David Cillernin - Fri, 08 Nov 2019 20:46:21 EST r4mTrUVu No.38258 Reply
OP you mentioned something about solidity assembly and TAOCP, how do you make money put of it?

I've tried learning from TAOCP, its going good. But have you used the newer MMIX to run most of the programs?
Eliza Huttingfuck - Fri, 08 Nov 2019 21:08:40 EST x6K3CZQk No.38260 Reply
In solidity the goal is to write an algorithm that consumes the least amount of 'gas', and TAOCP is filled with these kinds of algorithms that map complexity to incremental instructions, the 1960s design is exactly what you want in order to optimize these so-called decentralized contracts. In the rest of the world you aren't worried about solving inequalites like Knuth is in TAOCP for the most part because algorithm analysis is done differently now that we have highly complex things like dispatch and garbage collection. You aren't writing 1 to 1 mappings of instructions to complexity, but in Solidity that's exactly what you're doing because a single extra instruction means paying Gas. So Knuth's ancient tape algorithms or his highly ingenius combinatorial methods to save memory means saving gas/instructions, and you gain an edge. That said I haven't touched Ethereum for at least 2 years so I'm not sure what the EVM is like now but when I was dicking around with it gas expenditure was a major problem for contracts. Now that we live in a post spectre/meltdown world a lot of TAOCP is again more relevant than usual. That kind of fine grained control is also highly relevant for compiler optimization, which is now extremely relevant in a post spectre/meltdown world in fact I wouldn't be surprised if they started teaching out of TAOCP again. Not to mention the embedded optimization you can do with TAOCP algorithms, and RISC-V is new enough that none of that kind of optimization exists yet for it that I've found. A combination of that MIT RISC-V course (and their new OS course for RISC-V) with TAOCP is certainly a preferred education if you're going to go the imperative programming route and wish to future proof yourself.
Eliza Huttingfuck - Fri, 08 Nov 2019 21:30:37 EST x6K3CZQk No.38261 Reply
I did everything in the orig Mix manipulating nybbles. I do have the physical copy of the MMIX supplement but from Vol 4a+ you aren't programming that much, it's almost entirely analysis so really haven't used it that much. I did however read his construction of MMIX, which was probably one of the most informative operating systems guides I've ever seen but I don't recommend it because people look at it and freak out but it truly is an amazing piece of engineering that he managed to write himself. MMIX has a shit ton of registers, so programs are much smaller than MIX.
Eliza Huttingfuck - Fri, 08 Nov 2019 22:24:11 EST x6K3CZQk No.38262 Reply
By OS i mean the MMIXware behavioral simulator book, writing an 'os' for a new architecture. Anyway I have to disappear for a while and work on some things like the math meme guide. There's also a great pdf floating around, which I found while doing a CMU course (pp.1-6 review was mandatory before you begin writing solutions/notes/any mathematical content) of Knuth's talks on mathematical writing where he even got Halmos to show up and give a talk http://jmlr.csail.mit.edu/reviewing-papers/knuth_mathematical_writing.pdf
Phyllis Gonnerchutch - Mon, 11 Nov 2019 10:48:43 EST Dc47C/iT No.38265 Reply
OP, do you buy into these Rust safety claims? Personally, I think Rust is interesting because of the features lifted from FP, but the borrow checker seems like to much of a hassle to pick it up. Surely it would take less time to learn how to program safely in C than to pick up an entirely new language.
Fucking Drubberdork - Mon, 11 Nov 2019 19:10:47 EST o4pJWVya No.38267 Reply
>post spectre/meltdown world
What do you mean by this? I thought those were just exploits, albeit much dangerous ones, like the ones that are being discovered every day. What is so groundbreaking about those?
Phyllis Broddlesedge - Tue, 12 Nov 2019 15:33:45 EST XR1NF/yz No.38268 Reply
A lot of basic CPU optimizations from the past 10-15 years were nerfed because of those exploits. There's some serious doubt around whether today's CPU architectures can ever safely do things like branch prediction. Personally I think we'll go back to the 60s in a very different way: more performance through more specialized circuits.
Ebenezer Susslehood - Thu, 14 Nov 2019 17:01:40 EST yvAC9zZn No.38272 Reply
How long would it take to complete WIldberger's A and B list? Also, which exercises could I attempt because iirc he provides no such thing.

Thank you.
Nell Clellybark - Thu, 14 Nov 2019 22:02:52 EST x6K3CZQk No.38273 Reply
For the meme math guide I recently trashed it took me about a month in my very sparse time to go through all of playlist A, and yes there is exercises in the lectures he will show you one or two proofs then ask the viewer to prove the rest of the laws. Once you know the crazy 'BiPolyNumber' 2D array method you can open any precalc book and start doing the exercises if you wanted but you don't need to. The point is to watch those lectures and get an understanding of objects and their specs, then open up the book you want to complete, like The Art of Programming, and do the exercises there. Playlist A the lectures are only 10 minutes long until the last 10 or so which are 20-45mins each (when you start learning calculus). Things will click when you're doing those lectures, the first being everything is a different object and there's no longer just 'numbers'. I've only watched specific lectures out of B, like what is a series, limits, and his inequalities lectures (which may in C, I don't remember).

The way I do stuff is play lecture/read, stop at definition after author has shown examples (sometimes there is no examples), reach for notepad, work out examples myself of easy cases, work out examples myself of corner cases such as thinking up the most impossible to solve problem within that definition and trying to use it to solve said problem. If I get stuck, I watch or read some more of the material and then follow the bib entries to see if there's background material I need to know. If all that fails I go on google scholar and I search that definition or search for citations to whatever I'm reading/watching. If that fails I then resort to math stackexchange or similar sites which often will be wrong (overflow is for prof mathematicians, math.stackexchange is often incorrect advice and no better than quora results) but the response will have something in there I can re-enter to google scholar and finally find what I'm looking for. So far this method has worked for me. You can't just read and watch stuff, and then attempt the exercises. You have to write your own examples for each and every definition to prove to yourself you have an idea of what's going on because often you'll think you concretely know the definition then get totally lost in your own example, discover you misinterpreted it, and thank yourself for writing your own examples because you would've misread the entire chapter and have had to re-do it (which I've done, many, many times).

tl;dr write your own examples/exercises
Nell Clellybark - Thu, 14 Nov 2019 22:29:29 EST x6K3CZQk No.38274 Reply
Here's a further example.
The first chapter of TAOCP, at the end Knuth uses set theory to 'formally define' an algorithm, then he further uses a Markov algorithm to expand on the idea which you can look up on Wikipedia. He uses a quadruple, (Q, I, Omega, f) with I being the initial state (and subsequent series of states), Omega being the set of outputs, and f is a function from Q to Q meaning I to Omega. Q is the set of all states. When you google this to find out what he means you get numerous different answers. Many are wrong, because they assuming Knuth is using typical automata notation but he's not, he's using set theory notation. That quadruple, is an iterator. How do I know this? Because of google scholar: https://www.math.ucla.edu/~ynm/papers/foundalg.pdf scroll to 4.1 Iterators. That's exactly what Knuth is talking about in that section, which of course won't make any sense unless you've done set theory, like the Discrete Mathematics & functional programming book. Also note the recursively defined sequence of states (Wildberger teaches you this!) that almost every single stack exchange answer gets wrong. Now that you've read that definition, you work through Knuth's examples according to a set theory iterator and it makes sense which you really don't need to do for the very first chapter but it helps to know what's going on.

Speaking of Knuth, I'm writing the TAOCP walkthrough which will be similar to what's written above, mainly where the reader can find out how to do the first volume. I also found an interesting Bill Gates quote from 2005, given to a then Princeton Science Dean about TAOCP and how he would still hire anybody on the spot who'd finished that book and nothing else. He clearly has done the exercises himself too, talking about them in the interview which is often disputed where people claim that 'no way' could Bill Gates have finished TAOCP vol 1 in just 6 months but he did.

Anyway the new math meme guide I'm going to go through TAOCP first few math chapters, and it's functional counterpart, which is Cornell's new CS3110 gitbook, because when you get to the summary it recommends chapters from the very interesting book 'Functional Programming: Practice and Theory' by Bruce Maclennan (on libgen) where he uses math notation instead of syntax to teach things like higher order functions.
Nell Clellybark - Thu, 14 Nov 2019 22:59:03 EST x6K3CZQk No.38275 Reply
I know nothing about Rust, except for a specific project I had to do with it, hence why I bought 'Programming Rust' book. I believe for the most part, people are just building 'microservices' with it because of the massive complexity of trying to handle lifetimes but I could be wrong, I know shit about Rust. It's not really a functional language, to me it's a typed imperative language that you could likely go through MIT's 'Performance Engineering' course on compilers and optimization with instead of C++ if you wanted nice features like pattern matching and static types. I don't personally buy the safety guarantees of any programming language, I just think functional programming makes it much easier to write programs by yourself. I'm not qualified to formally verify kernels and launch space shuttles I have no idea what NASA does to avoid massive problems of shit commercial hardware.

That's for Quant traders, though I would imagine Rentec would've even look at you unless you already came with top credentials and even an employee recommendation. I only 'shill' them because of their famous Medallion fund that has turned a ridiculous profit for over 20 years without new investors (hence not a ponzi scheme). They are famously awesome to work for though, people bring their kids to work to learn from official US competitive math and programming coaches and shit. As for Quant trading it is technically possible to become one without a degree, as they hold public challenges yearly and whatever team or individual scores in the top X results they're hired (but still have to pass the impossible interviews). These positions require a knowledge of grad level stats (meaning somebody has gone over your work and advised you, because stats can be very, very, deceiving to a self learner), and extensive probability, not to mention proven experience either from these yearly competitions or from parachuting in from another fintech outfit. Machine learning is not what you want for Quant, you want traditional stats to sift through noise and find the signal. You also want vast experience in how to spot bias, because finance is filled with bias.

That said there's plenty of other positions in fintech if you're interested, for example Rentec is known to have the best data pipeline, and they need non Quant people to make this happen. Think about collecting massive amounts of proprietary data like credit card swipes worldwide, parking lot photos, insider leaks, anything that gives them a data edge like what gen. alexander of the NSA once called 'information dominance'. Most people I've talked to claim it was their commitment to exclusive/proprietary data pipelines and optimizing this with a small army of ivy league programmers that made Rentec the powerhouse it is today whereas everybody else is still catching up because they focused on bullshit instead. JStreet is an arbitrage shop, you are doing thousands and thousands of tiny transactions so they need people who know about program correctness, and traditional unix software like concurrency (threads) and shit.

Anyway tl;dr I don't know anything about Rentec, I just use them as the holy grail of outfits on wall street because of their legendary crazy benefits for employees like 'bring your kid to learn from a PhD' school and network access to any top school admissions in the world so even if you're a janitor there your kid is going to Brown.
Nell Clellybark - Fri, 15 Nov 2019 02:32:18 EST x6K3CZQk No.38276 Reply
Something you could try is to translate every definition in his lectures as you go to simple and hacky models in software. Wildberger gives precise specifications including types whenever he defines some new object. All of this can be written even in basic Pyret, to model integers as 'Nat less Nat' or write a function that can work on lists of polynomial coefficients or implement the binomial theorem, The point is to learn and get better at translating a model in nature/math/whatever to a software model. It can be a shit model, you'll fix it as you go. You can do this with any calculus book too just Wildberger makes it much, much easier by giving you precise rational field definitions so literally anybody can do this with just a junior highschool math background hence why I primarily shill the playlist.
Barnaby Sindlelatch - Fri, 15 Nov 2019 11:55:13 EST Jwq7K7iM No.38277 Reply
You make it all sound so easy. Also, it feels like you can appreciate wildberger the more you know about math. I'm probably going to go back and rewatch, actually attempt to do practice problems, and write notes.
I know you like to say you can technically do this and that without having this and that preknowledge, but you have 4+ years of hardcore math grinding in your baggage. I'm probably just a retard though lol. I think one of my issues is wasting too much time reviewing stuff i already know and not attempting scary hard stuff.
David Drungerstone - Sat, 16 Nov 2019 00:02:43 EST x6K3CZQk No.38278 Reply
1573880563909.jpg -(8252B / 8.06KB, 259x194) Thumbnail displayed, click image for full size.
Try some different math, like Brown's 'Coding the Matrix' course http://cs.brown.edu/courses/cs053/current/lectures.htm it has no prereqs though he does move really fast through the first few lectures on how a function works (because this is all in the book). This is also all in the VanDrunen 'Discrete math w/Functional Programming' book too. Get the CS53 book from whatever source, and work through it in basic Python, or your language of choice which likely has some kind of scientific library where you can build and operate on matrices. As you go through the course, follow the recommendations here: https://www.math.uh.edu/~dblecher/pf2.html take note where he writes about proofs where the author magically simplifies something, and you're supposed to figure out on your own how that happened. You make it a research project. Even asking stack exchange if you have to.

For me what I had to do was read until some insane notation is dropped with no comments, like ungangly nested sums that become magically simiplified, spend a week or two just figuring out how that sum was manipulated for just ONE STEP in the proof. Repeat for the rest of the proof steps sometimes taking even longer. Of course by doing this you build skills and these courses and books get easier to do, and because you had to figure it out yourself instead of having it handed to you, everything will be remembered. Of course I had the luxury of free time to do this, if you're going to university you can't just spend weeks like I did pondering a single algebraic step but they have people to help you there, and tell you exactly what's happening. Consider hiring somebody to teach you, tell a math grad student who has no money that you want to learn X subject in math, and one day a week give them $$ to sit in a coffee shop and walk through a proof with you.

Of course this is what I did in the beginning, and through that I ended up working in a university lab optimizing algorithms for a bunch of doctors and post-docs because the same guy I hired to help me with math suggested I work with him on the grant research they were planning, and from there basically my life changed. I went from cruise control pleb, with a history of basically being a fuckup and going to jail, to somebody focused on a specific goal but only because I met people who are really, really focused. They have a kind of discipline that nobody else has because they needed it to get where they are. You hang around these people long enough and it rubs off on you, because they know what they want in life, and they make absolutely sure they get it. They want to know everything there is to know about X subject, and so that's what they do. They don't sit around and watch netflix, they will examine a lemma in a paper for a few days even printing it out and pulling it out during a 5 minute commute in order to think about the problem some more. Once I saw this in real time I decided what the fuck am I doing, giving up seconds after coming across difficult notation while these guys are on another level. The guy I replaced, who wrote parallel programs in his spare time between research, was amazed by the CMU resources I had found, and had completely finished them, before I did, and I had been doing them for months at that point. But he wasn't interested in computation and only forced into it until I showed up. It wasn't because he was Jon von Neuman, it was because he had a different lifestyle than me where he was absolutely determined to know the material like his life depended on it because all these doctorates are competitive for grant money and at all times acted like somebody was about to take their livelihood so were machines compared to my pathetic past time of learning parallel algorithms on the side. If you're not interested in math, don't do it, do something else. Do what I used to do, find an existing service and usurp their features. In the process of doing this, you will eventually end up heavily interested in optimizing whatever your'e doing. Now you will have a very strong urge to learn modelling in math and will effortlessly seek it out yourself .

tl;dr, find what you really want to do, and compete with everybody else in whatever it is you truly want to do. This is how you bring out the best in yourself and ability to spend a week straight diving into this material. This is a big meme, but Arny is correct here in describing what it takes to 'be the best' https://youtu.be/u_ktRTWMX3M as he did not waste a single minute in his day in order to reach the goals he wanted. I never had this discipline so I spent a large part of my life just drifting around or doing stupid shit until I met people who were totally driven and able to do things I had no hope at the time of doing. They had no secret method, it was just they were competitive and prioritized their lives for a specific goal. If you do this then working through something like Concrete Math or that Brown linear algebra course won't be 'work', it will be a compulsion to understand and complete, if that makes sense.
David Drungerstone - Sat, 16 Nov 2019 00:34:50 EST x6K3CZQk No.38279 Reply
Another thing they advised me on, was having a life. At the time I had no life (because I also had to avoid a large amount of my 'friends' who were criminals at the time) and I was constantly trying to figure this stuff out and spending all my time doing it. Their response was simply you haven't properly scheduled your life so you get this done when you should, and then schedule time to pursue relationships. They all had families. I had a postage stamp box I lived in and between doing manual labour all day and studying all night I did almost nothing and it drove me to drink basically (as you can see with my early posts on various shitchans). When I started prioritizing and scheduling my time I discovered I actually had a lot of free time. My problem was I was shit at utilizing my time, wasting it for the most part, then panicking and doing long unneccesary hours all weekend that was unhealthy and ultimately reverse productive because I had to go back and re-do that material again. Once I started designating myself specific time in the morning (anytime is fine, for me it had to be in the morning) I found I had a lot of extra time. This is the reason I used to recommend Mason Currey's book about artists who had to schedule time https://masoncurrey.com/daily-rituals because that's exactly what you have to do if you want to get anywhere with anything, otherwise you just drift through the day and accomplish nothing, panic/anxiety hits and you feel you need to cram and it becomes unpleasant work instead of something you want to do. Try it, but with math, if that's the goal you have. nb
Eugene Clayhall - Sat, 16 Nov 2019 19:10:46 EST S3nM2uGw No.38281 Reply
I don't buy this. What possible benefit could there be to socialising with others? If you're talking about going to conferences and making professional connections them sure, but going out with friends to some pub or night club is worse than sitting home playing video games or watching films, in my opinion. If you've decided to go down this path, shouldn't you strive to spend all your waking moments improving yourself? There will be time for an autopilot lifestyle when you achieve success.
Albert Sinnersterk - Sat, 16 Nov 2019 19:20:07 EST 5BSfU5ae No.38282 Reply

I go outside because there's a non-zero chance I'll fuck a girl every time I go.
Thomas Babbergold - Mon, 18 Nov 2019 08:22:10 EST reomIj1t No.38283 Reply
What practical stuff can you advice doing OP? Preferably something with maths.
Frederick Drunningnin - Mon, 18 Nov 2019 16:38:42 EST m4eRpXlA No.38284 Reply
not him but strive to become a quant, or get into crypto.
Simon Borringdidging - Fri, 22 Nov 2019 00:27:39 EST x6K3CZQk No.38285 Reply
Their point was I ran my life like a pleb clusterfuck, so I got nothing done and ended up doing 'shallow work' instead of planning my time like they did. The post-doc's I worked with all planned their time with precision, it was something they had to do in order to get a PhD. I just kind of winged it and never had a plan, and wasted my time for the most part because I ended up having to relearn everything I did. That same lab is where I really got into TAOCP because they used the second volume for all kinds of statistical tests. Oddly enough the second vol is likely the most used book of the series because of the stats in it. Knuth even has a little known algorithm in there that's heavily used in bio labs https://www.johndcook.com/blog/standard_deviation/

Most successful software was written by somebody who wanted to make something for themselves, then other people liked it and started using it. As for practical, look at Bountysource, IBM wants you to optimize their architecture. If you want to write your own, nobody has written combinatorial auction software outside of billionaire gas/energy corps that I'm aware of. There's also a great old book floating around on Functional Programming that's entirely done in math notation http://libgen.is/book/index.php?md5=4F16BCDB896AC85CFD98AA060B49D1FE Cornell uses it

Gitcoin is also filled with bounty's you may be interested in, just don't do what I did and end up with a million worthless memecoins for writing a feature that took two weeks because you didn't read the fine print how you would be paid. 'We are paying you in clowncoin' .

I also still think if somebody has the time, they should look at deal dash, they should look at JStreet's MVP for incr_dom, they should write dope dash and sell it to legal dispensaries that can run a legal auction, some states can, and you don't have to be American to write the software. Canada stupidly fucked this up you can't write any of this software.
Metalucifer - Fri, 22 Nov 2019 09:42:54 EST tOLwQZN3 No.38286 Reply
1574433774742.png -(84446B / 82.47KB, 1336x1000) Thumbnail displayed, click image for full size.
Were you able to find and more advanced web dev course after you finished those notes? Or some course that would indirectly help with web dev and designing complex systems? Also, why did you remove that section at the end where you put some book/course recommendations?
Clara Hullerlock - Fri, 22 Nov 2019 19:38:50 EST x6K3CZQk No.38287 Reply
More advanced would be taking any kind of algorithms course, like dynamic programming or 15-213 to learn sockets. This is where an algorithm course shines, you have an idea like say, "I'd like to generate all html statically instead of writing a SPA", so you model this idea like you would in an algorithms text, testing it for further optimization potential, and then you implement that model where your 'back end' server is just handing out typed html everytime a user changes the state, and these static pages are pushed to a global cache. There's no web programming course that covers this kind of work it's all typical CLRS or Knuth or 15-210 algorithms work mixed with network programming sockets.

That JStreet MVP makes it much easier though imho but I think the book you're talking about may have been the MIT prof's book, 'Software Abstractions' by Jackson where it described Alloy, also used in Brown's Logic for Systems course which is routinely shilled by SK in the Brown CS190 lectures if you've watched them. http://cs.brown.edu/courses/cs195y/2019/pages/notes.html It's a great way to use a kind of set theory model, to model the logic of whatever it is you're building, for example a highly complex security model where user A can access X and Y but user B can only access Y. Alloy makes it really easy to model this security model, and then run it to identify any kind of gotcha's such as a combination of states that leads to the possibility where user B can access X and Y that your model allows without you knowing.

If your goal is paid freelancer work, the best way to learn is the mother of all demo apps spec which you implement and then go about optimizing yourself. Thousands of other people have implemented the same app so you can look at their code and compare. This is also exactly what those shady freelancer factories like TopTal will have you doing when you apply: implement this spec, optimize it for production (all trivial tasks like email confirmation are not run with priority), and implement this security hierarchy we made up where various users have different access. https://github.com/gothinkster/realworld
Clara Hullerlock - Fri, 22 Nov 2019 20:03:08 EST x6K3CZQk No.38288 Reply
I'm going to post sometime the guide to completing TAOCP vol 1, with zero assumed math background and anybody interested can follow with me. Everything learned there also applies directly to programming in Standard ML or OCaml which I'll do concurrently with TAOCP. It's not as impossible as everybody has told you, there just needs to be motivation to take Knuth's terse examples and work through them yourself. I definitely remember not knowing anything about even highschool math, so there will be no hand waving or assumed knowledge of the reader. That said it's the most insane time to do this so may not be able to post until 2020 but I'll see how far I get.

My only goal is to show people that these books/courses are not impossible to complete, even if your formal background is junk tier like my own. The books/courses, like TAOCP or Robert Harper's pfpl book, are amazing once you take the time to go through them. Esp TAOCP, there is no book anywhere that translates math notation to programming language like that series and every single line in the book is highly relevant to today even if you never program in sequential computation model because it's more of an intellectual exercise than it is a programming reference. Knuth is trying to get you to think about extremely difficult compsci problems that are over 50+ years old, maybe it's you that solves it.
Barnaby Nickleway - Wed, 27 Nov 2019 16:49:10 EST yvAC9zZn No.38290 Reply
Quick question: is it worth it to watch codingthematrix (CS053) vids? Or I'm fine with the slides?
Thank you.
Fucking Puddletodge - Thu, 28 Nov 2019 00:22:06 EST x6K3CZQk No.38291 Reply
Everything is in the book actually, but the lectures are nice because he will go through the notation describing what's going on, he'll go through quiz answers, he will demonstrate things that aren't in the slides, plus you get a good summary of that chapter and technically could go right to the exercises skipping most of the written material if you wanted for some of the topics.
Fucking Puddletodge - Thu, 28 Nov 2019 00:45:20 EST x6K3CZQk No.38292 Reply
Anybody interested what I've been doing is going through all the Wildberger lectures, and Tao's book side by side to compare and hilariously they are almost exactly the same in the early chapters, even the proofs Wildberger does are very similar to the proofs Tao has you doing of the integers/rational numbers, etc.

The Herbert Gross lectures also perfectly match up with a lot of the calculus w/limits material Tao goes into, and he even responds to comments on his youtube videos at age 80-something. Wildberger's of course veers off at that point and goes into rational tangents defining everything with algebra like his totally mind blowing derivatives abstractions that you could teach a primary school kid. Out of playlist B and his 'fundamental problems in mathematics' series you get a good review of the real number constructions. Of course Wildberger disparages these things but Tao will show three different methods, all of which are highly confusing unless you've seen the Wildberger vids because he walks through them. tl;dr they both go well together, so I'm making a meme guide out of them both because Tao quite literally constructs all of math from scratch and it's not impossible to follow, plus throwing in the TAOCP math prelims because everybody should do them, they look impenetrable but Knuth also performs this from scratch, assuming little knowledge of the reader, just motivation to fill in the blanks.. His appendix on writing proofs is also I think the best that's around, no tons of logic bullshit you have to wade through.

It is also night and day, the Herb Gross MIT lectures compared to their modern day 18.01 lectures as the older lectures respect the viewers intelligence and the newer ones are kind of awful, too simple. In fact Wildberger, Tao, Gross and Knuth all respect the student's intelligence though you really have to put in a lot of effort to fill in the blanks in their respective courses it's well worth it.

I thought about digitizing my Thomas' Calculus copies as that is exactly what the Herb Gross calculus course uses (the 3rd or 4th ed) but Tao will cover the same thing, even more rigorously, and in depth, and I only have the 3rd ed not the 'classic' thomas edition which was much more rigorous. One day I'll buy the classic ed w/supplemental problems that Knuth shilled as the reason he chose Addison Wesley as his publisher, and send it directly to a destructive book scanning agency to post it on library genesis as a pdf but it's actually quite difficult to get the proper book, I already have 2 failed attempts where some idiots sent me bullshit versions and not the real second aka: 'classic' version.

Anyway I'll post all this soon, anybody can do this, they just get scared away by the terse notation but it's not all that difficult. If you can't write the proofs that's fine, all the learning is in just attempting them.
Edwin Dremblesit - Thu, 28 Nov 2019 00:56:19 EST imdXiNHN No.38293 Reply
I can confirm on what you said. Currently doing Tao and trying to model his definitions on SML(is it easier to model this on OCaml?), while watching Wildberger. How do I incorporate Knuth's Literate Programming on this?

Btw does Tao also cover Convex Optimization and anything related to Machine Learning?
Edwin Dremblesit - Thu, 28 Nov 2019 00:57:26 EST imdXiNHN No.38294 Reply
Also what do you think about Enderton's Elements of Set Theory?
Martha Drubbledale - Thu, 28 Nov 2019 20:57:39 EST x6K3CZQk No.38296 Reply
Tao covers Taylor's theorem for multivariable functions IIRC, which is heavily used in convex optimization courses, like the one on the site from CMU with recorded lectures. You generally use practical convex optimization for modelling 'decision science', like recommendation systems (spotify, youtube, google), spam filtering, online routing, adtech shit like ad selection. The environment is so complex that it is totally impossible to lay out traditional algorithms, so you need some kind of optimization method that learns as you go along, observing the problem over time because it's complexity is enormous. Literate Programming I've only used for crazy things that I had no business programming, and it definitely helped because you kind of talk your way through the problem, like Knuth designing MMIXware which isn't a single machine it's an architecture spec with any number of implementations. Using MMIXware you can specify your own pipeline configurations, your own branch prediction and cache strategies, bus speeds, anything you want to customize in order to test a MMIX program. 'How fast will my program be if I implement X bus speed with this specific branch prediction strategy?" Fire up the simulator and see. It really is a work of art reading about the design of that program, which is all done in LP 'paradigm' so anybody can read it like a book.

I don't know if I've read it, probably the best book in the meme list on set theory is that Discrete Math w/Functional Programming book because you program sets and run them to see things you don't expect happen, like with cardinality. Tao will also cover sets, and of course there's Halmos' book which is the standard for set theory but I haven't read it all, it quickly becomes extremely difficult. Halmos book is one where you are often staring at the pages trying to unravel a massive line of set notation and put it together in your head.

I didn't include it in the list of courses, but I read a pdf called 'Foundations of Data Science' (not this pdf from cornell, but very similar https://www.cs.cornell.edu/jeh/book.pdf ) or something, and it was filled with affine geometry, which is entirely Wildberger territory, his Linear Algebra course is all affine plane. Something interesting to try if you enjoy linear algebra after that Python/Brown course.
John Hucklehuck - Fri, 29 Nov 2019 12:43:15 EST NhITR7br No.38297 Reply

I'm currently working through 6.041 and 10-606. There are four classes which I'm interested in doing afterwards. Which permutation sequence of { CS229, cs4780, 10-601, 10-701 } would you recommend?
Cyril Chuddlekin - Fri, 29 Nov 2019 19:28:14 EST x6K3CZQk No.38298 Reply
My favorite machine learning course was Cornell's 'practical machine learning' cs4780 because you're doing everything similar to what you'd do if you wanted to attack those kaggle challenges with a team http://www.cs.cornell.edu/courses/cs4780/2019fa/ the vids are still open, plus most of it is self contained whereas the CMU more advanced courses are not self contained and assume some graduate knowledge. I'd watch both year's lectures if you're confused by anything. That said I'm just a dabbler in ML and convex optimization, meaning I took the courses and dicked around but it's not what I'm doing all day, personally I found the 'general AI' courses more interesting where you cover A* search and that Sussman course reviewing old papers and exposing the current state of AI research. I also really like the Oregon PL Summer School courses, every year some cutting edge shit there on advanced type theory which I'm primarily interested in, and amateur crypto research only because DJ Bernstein writes gigantic, meticulously detailed posts on the IETF/CFRG mailing list on how he and his team of grad students do cryptanalysis and there's nowhere else you can find that information, digging through proofs, finding assumptions, finding ways to challenge the assumptions, breaking the cipher eventually or side channeling or some other fascinating method of detective work destroying weak crypto specs and implementations. DJB's post-doc students are also doing very interesting things if you follow their personal pages.

If you're interested in ML something else you can add to those courses is famous meme hacker GeoHot's weekly broadcasts on YouTube where on a Sunday he'll program for 6 hours straight live, usually doing some kind of AI for his self driving car aftermarket thing he's doing. You can ask him questions and he's taken every CMU AI course.
Samuel Garringway - Sat, 30 Nov 2019 05:03:13 EST afYdzNrx No.38299 Reply
OP, I wonder how you stay on top of what's going on in industry/academia. I mean it seems that you know a lot about state of CS/crypto/AI/ML etc. I've been reading HackerNews and circlejerk and some forums, but it seems that a lot if it is just bullshit and meme. Do you have some recommended methods to be informed but not go deep into path of distraction and memery?
Samuel Garringway - Sat, 30 Nov 2019 05:04:34 EST afYdzNrx No.38300 Reply
dumb filter... didn't know that R*ddit is translated to 'circlejerk'
Molly Biddledid - Sun, 01 Dec 2019 18:19:39 EST vkQDHPPG No.38302 Reply
tfw mit6148 javascript workshop 0 made me feel a bit brainlet in the sense that I was just copying stuff and while I saw what happened, everything felt like it came out of thin air. Maybe it was intended for the first glance at how JS modifies html files, it was okay I guess though it left a bad aftertaste.
Archie Crinningfene - Tue, 03 Dec 2019 23:35:39 EST LfQUGgrM No.38303 Reply
You seem very knowledgeable OP about research, have you published a research before? Or did you go to grad school, if so is it really worth it? I'm thinking of pursuing grad school after my undergrad, if only I have a grant from our government.
Doris Pockdale - Thu, 05 Dec 2019 21:30:25 EST x6K3CZQk No.38305 Reply
1575599425269.jpg -(48697B / 47.56KB, 480x360) Thumbnail displayed, click image for full size.
Sci-hub actually, reading journals, and following the PhD students of djb/robert harper/Ryan Odonnel and some other profs. HN I follow a few posters and sometimes go through the 'past' list of popular articles but I don't post there, or look at it everyday just on weekends if I have the time. I cut all those things out because they are time sinks, you get sucked into nonsense. I've never used lecirclejerk in my life, occasionally post on /sci/ and /g/, and also follow undernetz like Terry A Davis fans 256kilobytes website. I also have a twitter account where all it does is follow djb. I generally rely on everybody else following everything, and then telling me about it as well, which is exactly how I 'read' news, if it's important somebody will tell me otherwise I don't even read newspapers or watch CNN/whatever.

That said my one guilty pleasure is Stallman's personal page, I often check that and find weird shit like SciFi bookstores that used to take anonymous cash by mail and his one man war against all forms of tracking.

Web development is actually pretty difficult if you care about things like making it work for every single browser/device out there. Good design is still extremely hard to do, Working with half-assed implemented standards and doing async properly is often a nightmare. Speaking of HN some guy posted his reinvention of jstreet's incremental dom using Rust the other day. I still think jstreet's framework is the best going even if it is just a MVP they released to the public. For example the meme math guide, I decided to ditch MathJax JS cancer and just write it in MathML, which means only FireFox (maybe Safari) can properly display the site, but I don't care, I'll just export a pdf as well for Chrome plebs. Web dev is fun when you get to control the parameters and do whatever you want and absolutely sucks when you work for somebody and have to make it available to the (still!) millions of IE browsers out there and other edge cases, like the 2 billion or so outdated Android devices still in use.

I still think the best part of MIT's 6.148 class was those lectures on data abstraction to write a schema only once, and his 'concept' lectures. Everything else you can kind of figure out yourself but you're unlikely to build skills immediately to only need to write a schema the first time and deploy successful software the first time. I also liked that the clusterfuck MIT web lab workshop allowed anybody to just put up a MVP with a minimum of programming exp, the main reason I went through it.

I had a plan when I finished that shitty tutorial that I was going to document me applying to every terrible webdev remote factory like clevertech, toptal etc., but they all made me sign NDA's this time around through the interviews but honestly to get in, all you need to do is get really good at 'the mother of all demo apps' that medium clone I posted. That is exactly what they tell you to do, something very, very similar (here's a spec/api, now do it for production) and most people freak the fuck out because it's a lot of work building from the ground up a production medium clone with just a week's notice but I took short cut's doing it in ReasonML (though I dislike reasonML and prefer just OCaml -> js '''transpiling''' with js_of_ocaml) . You should know you can get in without needing to write the node.js cancer/expressJS part, and they will hire you as 'front end only' if you just use Google firebase API for everything and you can test later for so-called backend development. I didn't post this because I actually want to keep my TopTal account (i now have 2 of them) because it's really easy work, and soon I'm going to quit and go back to research, relying on TopTal for my slush fund.

Clevertech and the rest are so absolutely dystopian that I abandoned those accounts after they hired me, and do not want to recommend them to anybody. In fact all of the freelance sites are pure, distilled cancer these days and there isn't a single one of them that I would recommend unless you have exp and can get into moonlighting.com or shill yourself on HN freelancer threads, or get into security freelancing. I also wish there were more bounty sites around. BTW, all of my current job offers, are from bounty sites... and Amazon for some reason even though I have no social media presence anywhere they still found me and want me to work there relentlessly.

I did manage to weasel my way into grad school and then bailed, which in hindsight was a mistake, as I still don't have a BSc. My name is on numerous papers when I worked in a research lab and they just concatenated me on to the list of accolytes. I have to say research work, is the best work there is, but you won't make money, but really who cares, you can afford to eat, have a place to live, and every single day you are involved in things that are changing the timeline. There's no bosses except yourself because you don't want to be the person who implodes the research grant with shitty software. This means you can do whatever you want, write in any language, and at the time I was researching Robert Harper's blog and dropped inductive types to make what we were doing possible. My name on papers, and the recommendation letters you get from PhDs directly were responsible for my admittance to grad school but I was involved with some girl at the time, I was still a brainlet, I dropped out which I've always done (also dropped, then kicked out of HS) but I might actually finish someday, it's one of the reasons I used to shill the online schools. I have 2yrs exp with 'University of the People' if anybody is interested, but I can't recommend them because of national accred and not regional, and Western Governor's uni is overpriced, but if I went back I would go with them, because you can audit the courses, and they have regional accreditation.

Anyway, I don't think you need grad school, that's why I posted that ancient HN post about the chemical eng guy who now is working in theoretical compsci. It's also why I posted all of Ryan Odonnel's grad courses on TCS research, and Robert Harper's lectures, because you can do this without needing to go to a school and end up in grant hell, but you need to follow the same people they do, like Thierry Coquand's papers, RHarper's grad student's papers, going through his OPLSS lectures on trying to model math in type theory (or his HOTt lectures), in fact I'm going to paste that onto the math meme list after I work through Tao's book, another construction of the Reals using type theory is highly illuminating at least to me anyway (where you may think Wildberger is right).

In other news has anybody seen https://openbazaar.org/ shit app? This is a bigtime opportunity to write your own, I'm going to try something. Hint: write a weed app. Shit is rapidly changing too, on a Unabomber manifesto scale, 5G millimeter wave is being deployed all over. A gigabit or two in your pocket, what do you think this could accomplish, deep learning for one, natural language processing for sure translating things, all kinds of bladerunner-esque shit that nobody really is expecting but I'm using it everyday and let me tell you, you aren't prepared, nobody is.
David Fivingchot - Fri, 06 Dec 2019 00:01:25 EST EmqqHstG No.38306 Reply
I'm having a dilemma whether to pick industry or academe after I graduate. Thanks for the enlightenment.
Metalucifer - Fri, 06 Dec 2019 07:43:21 EST MmoLooUZ No.38307 Reply
How do you have 2 accounts on TopTal? Don't they do a webcam interview to make sure you know English or something like that?
Also, why do you think Node is cancer? I used to think so too, but now I'm making an app with the TypeScript/React/GraphQL/PostgreSQL/Express stack, and it's pretty comfy. Though I haven't used anything else so there's nothing to compare it with.
Ernest Clazzledutch - Tue, 10 Dec 2019 23:26:11 EST x6K3CZQk No.38308 Reply
You can do research in industry too. IBM is always hiring for entry level - 'Research Software Engineer', plus every single bio startup from what I've seen. Any kind of compiler work will require daily solving of esoteric computer science problems and research too but pay much more than university work, though you get better benefits at universities like the ability to fuck off for a year or so if you want, numerous other benefits like sometimes free tuition to take P/T classes depending on the univerity lab.

If you like Node you should use it. Writing Node.js shared objects in C++ so they can be used just as if they were an ordinary Node.js module is an easy ticket to very, very high priced consulting if you know Node and would like to really know Node by ripping apart it's internals and optimizing/integrating 3rd party C/C++ libraries for it.
Hugh Goodhood - Wed, 11 Dec 2019 02:42:48 EST XRLcvK6g No.38309 Reply
Well shit sucks here in the Philippines, we don't have any research positions in IBM(afaik), but I could be wrong though. So my plan is to go through academe first.
Ebenezer Billymork - Wed, 11 Dec 2019 19:24:10 EST x6K3CZQk No.38310 Reply
Work for Filippino fintech https://www.kalibrr.ph/c/berkeley-quantitative-research-inc/jobs/89419/programmer-analyst?utm_campaign=google_jobs_apply&utm_source=google_jobs_apply&utm_medium=organic

The good thing is that the pay will be ludicrously low, because it's PH so they will be desperate to find qualified people. You're already over qualified if you've done a single meme list course. I'm guessing they have Quants already and need people to help write/implement the backtest algos after being given a complete spec if I read that job desc correctly. If you can do that see you next year in Hong Kong
Nigel Wadgesatch - Thu, 12 Dec 2019 16:50:19 EST +m9FgW6z No.38311 Reply
OP what do you think of machine learning image manipulation, for replacing (not supplementing) something like Photoshop? For example, how far are we from being able to remove some foreground object and perfectly fill the void area ?
Matilda Hunkintadging - Thu, 12 Dec 2019 20:51:53 EST x6K3CZQk No.38312 Reply
MIT already did that last year and published it in ACM Transactions on
Graphics (TOG) http://cfg.mit.edu/sites/cfg.mit.edu/files/sss_3.pdf it can even do fine pixels like hair https://www.youtube.com/watch?v=PnA3Id93JKs

The best sources for this are usually MIT's technology review, which lately has sadly become much more clickbaity but you can still find non alarmist AI news there. If I were to make a prediction neural networks/deep learning will explode once 5G happens worldwide since you will have a 1 Gbps device on you at all times.
Lydia Nicklewater - Fri, 20 Dec 2019 08:03:00 EST i+f/IVHp No.38313 Reply
Woah that is the first time that I've ever seen that company, sounds interesting.

What undergrad level thesis do you think OP, that will certainly make me win the best thesis in a meme uni?
Hedda Gungerhood - Fri, 20 Dec 2019 09:15:39 EST Kpvms1cU No.38314 Reply
Woah that is the first time that I've ever seen that company, sounds interesting.

What undergrad level thesis do you think OP, that will certainly make me win the best thesis in a meme uni?
Ebenezer Pogglefield - Sat, 21 Dec 2019 15:54:00 EST x6K3CZQk No.38316 Reply
A thesis means you spend a lot of time working on it, so it should be something you actually want to spend hours everyday with and in whatever concentration/program you're in. A 'meme uni' would likely want some kind of AI paper they can hype to attract future students, arxiv is filled with these you can see for examples like the hundrendth paper on some kind of Kubernetes optimization via AI decision. You can use Algorithmia for this, they have a free trial version where basically you glue together calls to existing AI algos on their platform via their API, so you can take a picture of something and have it immediately translated, then your paper is about 'computer vision' with your software as an example. Google has a bunch of free AI cloud resources you can write papers on too mainly video processing like indexing a youtube video for certain keywords, then your paper is about searching video content 'with AI'. This is assuming your university allows survey type papers, most MSc mills I've seen typically allow a survey style paper, depends what your university will let you do.

Since you live in the Philippines, any paper that 'solves' the traffic problems of Manila would obviously be hyped, and is straight up computer science/graph theory very hard to solve problem.

One thing nobody is doing is enabling the collection and selling of your own data. Instead of letting 3rd party trackers and social media giants vacuum and sell your personal data, you could devise some kind of scheme for somebody to sell their own data then offers up an anonymized version to big retailers and adtech companies to buy. For maximum memeing a cell phone app that voluntarily spies on everything you do like what locations you visit during the day, where you stopped in a store to look at something, all the standard spying metrics an adtech company would use but given anonymized and voluntarily for money by the person themselves. The CMU practical data science course is perfect to learn these topics and how to present them to adtech for sale. You could even include the definition of how an auction market could sell this in your paper, where advertisers could come along and search for 'single mothers age 30-40 buying childrens clothing' and buy the data directly from the people they are targeting instead of middlemen. You don't have to actually make such a thing just define it for a paper or produce a MVP typically, like a voluntary spying app or browser plugin.

You could write yet another p2p paper as well, one thing I noticed in Phils when I was there briefly is no matter where you go somebody is selling something out of the back of their house or fruit stand etc. Write a paper about how a p2p market would work where you type in what you want and it uses decentralized search to find the closest match, assuming everybody is using said p2p scheme, which could be a simple cellphone app and hacked together GNUnet. Again something that eliminates middle men and uses hyped 'price optimization' algos or whatever and you win thesis of the year, whatever that means.
Basil Cissletere - Mon, 23 Dec 2019 21:56:39 EST x6K3CZQk No.38317 Reply
1577156199119.jpg -(154661B / 151.04KB, 640x360) Thumbnail displayed, click image for full size.
So I'm building a new meme list, this one for direct employment as an 'AI engineer' in NLP/Deep Learning/ML for the following reasons:
  • I was watching GeoHot's 6hr Sunday programming fest he does weekly in building AI algorithms and solving Advent of Code puzzles, and it isn't really all that hard to learn what he's doing in those vids
  • Everywhere here they are desperate for 'AI engineers', esp in places like Bangkok/Shanghai/Singapore where visas are just handed out easily to any foreigner who qualifies, and recruiters here are like 100x the pestering of N. American recruiters because of the huge amount of openings.
  • I actually went to AI town pic related, they wanted to hire me on the spot
  • Everything is going to rapidly change when real 5G comes out, deep learning will explode
  • The Biotech revolution is upon us, genomics manipulation with programming is a common thing now and anybody here can do it
  • It will guarantee employment in a research lab, like what I used to do (and will prob go back to) and they're the best jobs you spend all your time reading papers and just playing around doing pure research while getting paid without needing a degree. Full university benefits, name on papers, etc.
  • All the existing resources are mostly shit for this
  • MIT has totally changed their courses recently to reflect desperately needed exp in statistics and optimization and made them public even
  • All the grad courses at CMU/MIT/Cornell are still largely open, just need Tao's book to understand them
  • Geohot took the exact same courses at CMU, and can read ML papers, no reason the student can't
  • It will be entirely in Python (like Geohot's live vids) except for a C++ CUDA parallel course and the functional exp will come when you learn 'Deep Learning', because everything about it is functional. Our current tools for these things are generally shit and primitive like pytorch or scikit-learn because it's a very young field, and eventually massive institutions with deep pockets will fund a functional library for AI, if you know things from Cornell's 3110 like fold right/fold left you know deep learning/RNNs already. No joke, it's almost the exact same concepts. Robert Harper seems vindicated here for insisting CMU redo the entire curriculum.

I'm also going to do the meme list myself of course with the reader, doing most of the courses at the same time. I walked through 1/4 of Tao's Analysis book and realized I should probably just keep walking straight through to AI. I think you can do this in under a year's time, from scratch, with no math exp whatsoever, granted you do an hour or so a day which I'll try starting Jan 2020 and post it as a work in progress for anybody interested in meme fields like AI. My goal is common pleb sits down, works an hour a day, a year later said pleb is reading the journal of artificial intelligence and can actually understand what is going on. I'll post this on the main site, see you then.
Ernest Gamblestig - Tue, 24 Dec 2019 11:57:43 EST Vj7u0Q8V No.38319 Reply
If you're planning to do it for only an hour a day, I will probably be able to keep pace with 2 or 3 hours haha.
Sad to hear about Python, but I guess there is no better alternative. Is it possible to train the models and then export them to ONNX and use a proper language like C++ or even OCaml? Though I haven't used Python nontrivially, but from a glance it looks like its only purpose is to glue together C/C++ libraries, not making complicated apps. Your thoughts on Python?
Jenny Blummleman - Tue, 24 Dec 2019 12:27:58 EST aaUiQ+mc No.38320 Reply
>because everything about it is functional. Our current tools for these things are generally shit and primitive like pytorch or scikit-learn because it's a very young field, and eventually massive institutions with deep pockets will fund a functional library for AI

Can you elaborate on this? I've used sklearn a lot and I'm slightly familiar with functional programming but I can't picture how would you remake this libraries with it.

Unrelated question: how does F# compare with OCaml? They seem the same to my untrained eyes, but the former has patronage from Microsoft. I'm not sure where to invest time.
Metalucifer - Tue, 24 Dec 2019 13:11:01 EST MmoLooUZ No.38321 Reply
F# is an OCaml copy without the module system. Which is kind of pointless because the module system is (arguably) the best thing about OCaml. They took it out to accommodate their .NET OOP. So unless you're a .NET developer, there's really no point in picking it up over OCaml.
One thing about F# though, is that it has amazing documentation. Much better than OCaml. And because they are largely the same, you can use it even if you're learning OCaml.
Rebecca Billingway - Wed, 25 Dec 2019 12:12:39 EST x6K3CZQk No.38322 Reply
Only because all the courses use it for assignments, and the main goal is to learn the math. Of course we generally use python/c++ libraries and whatever today, but AI in 10 years from now may be completely different as per the 6.034 graduate section Sussman ran https://functionalcs.github.io/curriculum/#org50fe46d that is still running: https://ai6034.mit.edu/wiki/index.php?title=6.844_Info which promotes innovation in AI throwing out the stats models and instead modelling how our brains actually learn. So the idea is a practical sequence of courses to learn math from scratch, where you can actually get paid in an AI lab using today's libraries (or work at Bloomberg), and at the same time promotes reinventing everything from scratch.

If you take the Cornell 3110 course it directly translates to other functional languages, like understanding Haskell https://www.cs.cornell.edu/courses/cs3110/2019sp/textbook/ads/monads.html the same with the 15-150 course, they teach fundamentals of things then you can go off and use F#, Elixir, anything. You could hack around in F# and take 3110 on the side there's plenty of general advice in there about any kind of programming not just OCaml specific knowledge. To be honest I don't really like any industry languages, I like Standard ML and Common Lisp. I only use OCaml because more libraries, and it's closely related to SML, such as fine grain control over opening up namespaces/scope (modules) which is an absolute godsend in any massive program you're maintaining. I also like the straight forward OCaml/SML complexity model (we'll learn the Python complexity model in the new AI meme course).
Eliza Blackford - Wed, 25 Dec 2019 15:57:49 EST sD5wM9gR No.38323 Reply
Quick heads up: MIT's 6.148 isn't "working" right now, as they have removed 2019 and prior content, on the brighter side the new iteration starts at the end of the first week of 2020.

An anon on discord suggested CS 142: https://web.stanford.edu/class/cs142/info.html
William Dicklelodge - Fri, 27 Dec 2019 17:54:21 EST VDq0sJFX No.38325 Reply

Will you walk through CS4780? I got lost in the notation about Bayes' Theorem (lector's 7 or 8) so I've put it on hold while I go back and revisit some probability. Coincidentally 3B1B posted a video about Bayes' Theorem!
Esther Fuckingbury - Sat, 28 Dec 2019 00:53:56 EST x6K3CZQk No.38326 Reply
Thanks, their git is still up and 2019 lectures https://www.youtube.com/channel/UCS2pbR9gJpaT6HIcQNT2QQQ/videos which is all that's really needed, I'll fix it or maybe just even wait until the 2020 lectures start. The only reason I used web.lab was it's a workshop where you just hack around and produce something, whereas most other webdev courses are now overly analytical/obsessed with scaling single page services to infinity.

Bayes' Rule or Law/Theorem is in MIT's 6.042j on OCW/youtube, also it's covered in the probability OCW course 6.041
I assume you mean this: https://www.youtube.com/watch?v=e-yQFC6dACA (his hilarious accent) from the 4780 lectures on generative models/Bayes Naive classifiers.

The same guy who teaches the 2019 CS4790 course also has an advanced version with open lectures https://www.cs.cornell.edu/courses/cs6780/2019sp/ I haven't gone through much of it yet but 4790 so far is virtually the same, just more theory is explained in the graduate version. I like the Cornell versions of ML the best so far because most of the others are geared towards PhD researchers where you get a whirlwind tour of different ways to model and there's so many techniques being taught you almost forget the big picture. My second meme list to compliment the first list is about AI/applied scientific computing entirely, and I'll do whatever the latest version of Cornell's ML (and some of CMU's other new AI courses as they now offer a BSc in 'AI'), with this course in genetic machine learning as an applied example http://stellar.mit.edu/S/course/6/fa19/6.047/materials.html plus some regression analysis/36-402 data analysis, Gilbert Strang's 18.085 which is a graduate class in applied math modelling still going every year covering things like Ito calculus/stochastic processes (finance), and a great course 15-853 Algorithms in the Real World that points out every algorithms book on earth assumes that reads & writes have the same cost, but what if DRAM disappeared and was replaced by any of the new persistent memory schemes coming out, they would have different costs and then we'd need to rewrite all those books and programs. All of this sounds like a lot but they're just one semester courses all of them, and in the new CMU BSc in AI you're taking 11 courses each year, 5-6 per semester, I won't be doing that many.
Reuben Fidgeludging - Sat, 28 Dec 2019 04:34:03 EST KqRI5hYI No.38329 Reply
Thanks for the awesome ideas OP! I've had some ideas on what to do so I searched for a research paper on the traffic here, turns out someone already did one, albeit on a small portion of the city only. https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.dlsu.edu.ph/wp-content/uploads/pdf/conferences/research-congress-proceedings/2017/SEE/SEE-I-011.pdf&ved=2ahUKEwj_7M3jg9jmAhUGHXAKHXxPCoEQFjAAegQIBRAB&usg=AOvVaw3OKX7MaUFCKXuy3ARkayJN

But it seems unpolished IMO. If you look at the reference, they got the algo from a pajeet website(the state of research here kek). What are some relevant topics in CS that I should study to pursue this topic if ever? And can I collaborate with someone outside my uni and hell someone outside the country? I've read some of Tanja Lange's work and was quite interested on the post-quantum crypto shite. And was wondering how can a lowly undergrad contribute to some topic like that lol.
Charles Chorringnetch - Sun, 29 Dec 2019 00:53:45 EST x6K3CZQk No.38334 Reply
If you're doing 15-210, Parallel Algorithms, get the 2019 version from libgen.is don't use the outdated draft version. Whoever uploaded that, thanks.
The book is interesting enough for just a read through without even knowing any of the math, it covers well known sequential algorithms you find in every language standard libraries and how you would go about splitting up the work.
You can get the 210 course library https://github.com/CMU-TOP/210lib and then just search github for students who have uploaded their completed labs for various years https://github.com/search?q=15210
Read the pdf lab instructions and then peer review as many different student implementations as you can find. Working in a school or industry you'd likely be reviewing code everyday anyway so may as well practice now.
Rewrite/improve their solutions, since it's a parallel algorithms course you can always optimize something.
You'll see some interesting things, from terrible to excellent implementations and the one anonymous guy who very angrily ranted to the grading TAs in code comments. Don't post your review anywhere or point out anybody, the schools will deploy lawyers to flag down all lab repositories or something should any 'student humiliated online by shitty public class code' trolling go on. You can do the same thing for 15-150 since the labs are floating around but all with solutions. There's always a better way to rewrite what you found.

This MIT prof has multiple talks on parallel 'domain specific architectures' for deep learning if you liked the 15-210 course https://www.rle.mit.edu/eems/publications/tutorials/
George Bridgespear - Sun, 29 Dec 2019 19:17:35 EST x6K3CZQk No.38335 Reply
Both your questions are in a way answered by the last 2 lectures, of the Brown CS190 class. The second last lecture IIRC he goes through a high level overview of networks on a graph discussing all the various challenges in traffic planning for a network, like highways or routers. CMU has a scheme called 'Surtrac' they deployed in Pittsburgh last year which is some kind of AI hybrid system where it controls traffic on demand with sensors/cameras but I don't know anything about it.

The second question, in the very last CS190 lecture he covers security specifically principle of least authority showing how regular use of the unix copy command also brings in the ability to do almost anything like even connect to an outgoing network. He then talks about 'shill', which is a POLA shell http://shill.seas.harvard.edu/ experiment. djb, is a fan of Qubes, and you'll often see him posting on their mailing lists. He's highly interested in secure operating systems abstracted so the user doesn't need to know anything, and things like a shell with POLA abilities. Prof K in the cs190 lectures also talks about systems that can use misdirection, handing over a fake object like a file system should a unix shell program need one in order to fool an attacking program using such things like on demand virtualization/containers in order to detect and limit their access should your security architecture notice something wrong and try and isolate the attacker.

Otherwise it is possible to actually go to TU/e as a foreign student and get into their PhD program. Look up their existing foreign students how they got there https://hyperelliptic.org/tanja/students.html Briefly looking it seems most foreign students obtained MSc's in their home country writing a thesis about cryptography or coding theory then somehow got into TU/e under a paid scholarship, likely by meeting either of them at a conference they go give talks worldwide every year. I have no idea what MSc tuition would cost in the Philippines, and you'd have to go on google scholar or arxiv or something and find a professor there who is outputting papers in a relevant area, then contact them to show interest in being their grad student.
George Brookbury - Tue, 31 Dec 2019 13:13:51 EST bhUGk0Xs No.38336 Reply
Hey OP I know you're very busy, but when is the expected release of the math curriculum(with special emphasis on TAOCP) and the A.I. one?
Emma Deblingfield - Wed, 01 Jan 2020 18:49:04 EST x6K3CZQk No.38339 Reply
This week, if schedules permit, I'll start incrementally an AI from the very beginning workshop, influenced by CMU's world's first Bachelors of AI and post it and see how far we get by December 2020. It will be from absolute scratch though, and doing different subjects at the same time since Erik Demaine and people like Tim Gowers recommends this. Anybody who doesn't want to go from scratch, there's a new free book: https://mml-book.github.io/ 'Mathematics for Machine Learning' which is similar to TAOCP Math Preliminaries section where everything is explained to 'a reader that knows basic highschool calculus' and it is equally terse, showing you just enough to get what's going on to approach the machine learning in 15-388 or CS4780. There's a caveat of course, the author acknowledging that expertise in highly technical probability/measure theory will eventually be needed and other expertise like numerical matrix analysis. There quite literally is 100+ new papers in AI dumped every single week I look at arxiv or google scholar all detailing new techniques all of which I know nothing about that have changed since when I took these courses the first time.

Something different is we have to do an engineering-esque curriculum, so things like analytical geometry because whenever I see some new paper it usually involves building a preliminary model, projecting it into some new space where analytical optimization can be performed, then translating this abstract space to a working program. This kind of work is covered by basic things like Strang's Calculus book, which is entirely about using applied math to create a model that replicates a real life thing. This is also covered by Brown's CS019, all those very odd exercises are training to do exactly this kind of engineering work: take a seemingly very complex and difficult problem, simplify it, write a program, create a testing oracle to prove properties of your program(s) matches properties of the model.

I will try to take short cuts, since there's no way we can finish CMU's new BSAI by ourselves in any kind of realistic time but we can do some materials that kill two bird's with one stone. As an example, doing a few chapters out of Tao's Analysis I book. You can skip all those introduction to proofs courses by doing repeated proofs on simple things like a + b = b + a or the laws of exponents, so you learn basic math and how to do proofs at the same time. He has the best introduction to induction I've seen, where P(n) is actually explained, and the first example of proving 'a half number' cannot be a natural number because you go step by step through the properties of natural numbers intuitively cements proof by induction. You are also setting yourself up to learn future measure theory doing some of the first volume which the author of the mml-book thinks we'll need. We probably can't do all the proofs in Tao's book but that doesn't matter, this is just practice to build the so-called mathematical thinking skill by repeatedly seeing Tao prove things over and over and trying to mimic them ourselves. Knuth is the same, you can't do all the exercises in chapter 2 when beginning, but thinking hard about the problem, then later looking at the answer, and repeating this 50+ times eventually you start to pick it up. Then you could go back for a second reading later, or a third and maybe end up solving more exercises. In fact this is exactly what Knuth recommends in the preface that people do, as that's how he learned.
Ernest Bliffingpodge - Thu, 02 Jan 2020 07:19:03 EST bhUGk0Xs No.38340 Reply
I'm glad I'm not the only one struggling with Tao lol. I cannot solve some of the exercises, so I routinely skip them and also I use Tao together with Baby Rudin and Pugh for additional insights.
Edwin Bripperman - Thu, 02 Jan 2020 10:19:44 EST OZhj+ZE6 No.38341 Reply
Hey, OP. Which OS do you guys use in your work/research, and if it's Linux which distro?
Cyril Senningbanks - Fri, 03 Jan 2020 21:15:46 EST x6K3CZQk No.38343 Reply
Peter Norvig has the best advice probably: https://norvig.com/21-days.html which is 'use whatever your friends are using then you can learn from them'. My advice is whatever gets out of your way to get things done and has good enough documentation you can figure out how to do things.

Some advice was given to me by a grad student I used to hire many years ago to tutor me on some basic math. I asked him first how to learn proofs, and how you verify yourself that your proof is correct, or even how to verify somebody else's proof. His answer was essentially exactly what Tao has written on his blog about how to learn and relearn your field. All the answers you need are already in the text, the reader's job is to carefully study the proofs the author has given for examples, and then try to use their proof to write a better/different one meaning more generalized, more 'elegant' as in easy to follow and understand, etc. By doing this you gain a sharp eye for faulty assumptions, or illogical conclusions, which is exactly how he would check my work. I had assumed he first learned by doing a hundred exercises out of a hundred books but he learned this skill from a single albeit advanced book and by making his own exercises out of the examples, and didn't once try any of the exercises as he found them too difficult at the time, but trying to rewrite the existing proofs he found easy. Then later he could go back to the same book and do the exercises. So he told me try to do the same thing, forget about the exercises, look at the example proofs and try to rewrite them until you think you have an idea of what's going on then try the exercises.

When I tell people this they usually think I'm crazy because most people have this idea that the only way to progress is to read, do exercise, repeat, throw book away, get new book on brand new subject, repeat, instead of studying the same book for a long time until you get to a level where you could start doing some of the (often next to impossible) exercises so I generally don't include it in my meme lists (though, the new one I will). It kind of goes against all conventional knowledge to repeat the same thing over and over but in programming you do this all the time, you study existing code, try and make it better.
Hannah Blythewill - Sat, 04 Jan 2020 03:06:01 EST U87jUmNP No.38344 Reply
I really wish there was some maths grad student to guide me right now, alas there is none here. I've tried asking around the math majors about Real Analysis and they were clueless about it too. Thanks for the strategy, I will try it. I've been stucked on that Strong Principle of Induction exercise for quite some time now.
On the other hand, what is the difference bet ween 15-213 and MIT 6.004?
Cyril Senningbanks - Sat, 04 Jan 2020 03:51:49 EST x6K3CZQk No.38345 Reply
I don't remember that exercise but since I'm doing that book in the new meme curriculum it wil come up eventually. Strong induction you assume that the statement holds for all previous steps. To prove P(3) works, assume P(2) works; to prove P(4) works, assume P(2), P(3) work etc. Then you can use tricks of contradiction in order to 'prove' something by strong induction finding something that contradicts an assumption, such as 'this exercise answer is false: by strong induction, this is contradictory, ergo we proved it's not false. that's all I remember from doing that book until I do it again.

Speaking of new curriculum, Monday I'll post it no matter what and just wing the curriculum everyday for a year and see what happens. I'm going to include some things nobody would do in a 2020 curriculum just because of what I've run into with shitty whiteboard interviews and the like, plus they're generalized enough that they will help the reader learn 'AI' which I will shamefully call the 'AI Tripos' as I plan to do 3 things at once: programming, math, AI, so people can just pick one if they want and follow it.

tbh I dislike real analysis but it's necessary to do, and secretly agree with Wildberger that the reals prob don't exist, and you could just take things like the natural log and pi and extend the rationals with them instead of creating an entire new number abstraction. But I'm just a pleb I may change my opinion really going through Tao's Analysis I and reconstructing the Reals, I only superficially did that book the first time around.
Hannah Blythewill - Sat, 04 Jan 2020 04:04:20 EST U87jUmNP No.38346 Reply
If I remember it's in Chapter 2 Addition, it is the second to the last exercise where you prove the Strong Principle of Induction. I have an OCD where I cannot move on a chapter if I do not finish a certain exercise kek.
That's wonderful to hear! I guess it is time to fire up my studying skills by a notch, esp. since I am at a meme university lol.
Jenny Blarringhood - Sat, 04 Jan 2020 04:45:04 EST MmoLooUZ No.38347 Reply
This sounds very similar to a theory in language learning called comprehensible input https://youtu.be/fnUc_W3xE1w
I've been wondering for a while if this is applicable to other subjects, not just languages.
I've had great success with going into some popular repo on GitHub and just reading the source code. At first you don't understand much, but after a while you pick up idioms, patterns, tricks, etc.
I haven't had a chance to try this with maths, but will do so with the new list you're making.
Do you think there is a connection here?
Wesley Duckshit - Mon, 06 Jan 2020 02:25:29 EST x6K3CZQk No.38348 Reply
Math is similar. Lot's of the CMU and Brown math profs have pages filled with research papers on students learning math and the best methods, or Clive Newstead who wrote the infinitedescent.xyz book. I find all those 'learn to do proofs' books are probably best read after you've read through somebody's proofs. They immediately give you a huge amount of advanced strategies and jump through too many topics which won't make any sense until you see how somebody else does it. That's one reason I like Tao's books/course notes, he goes through everything so you see him write 50+ proofs and carefully reading them you eventually just get it. Then can pick up Poly's How to Solve It or something.
Wesley Duckshit - Mon, 06 Jan 2020 03:22:04 EST x6K3CZQk No.38349 Reply
Anybody who wants to learn a little bit of AI everyday follow along https://learnaifromscratch.github.io/

I've only done one day so far, will see how far we get this time next year, I'll try and constantly rewrite this as we go until it's simpler and more clear as this is just an early shitty draft. The longer we go, the more terse it gets since I can assume a background but basically anything I see in the materials that would trip up somebody without experience I try and figure it out in the notes, that's really all they are for, basically I'm just a random TA for these classes. I also can't post a vast trove of solutions since I would ruin the resources but you'll easily be able to figure it out on your own after we tediously walk through a lot of the intro material. Can always try and rewrite the given proofs, there's probably a better proof to almost everything such as making it a little more generalized or with easier notation, especially the simple early proofs we do. That's what all those learn to prove/solve problems books are for with their different strategies.

The rough plan is to finish the math section somehow so after CS188/15-388 we can do machine learning and take Strang's 18.065 alongside the course which covers all kinds of numerical linear algebra and enough statistics it's all we need in the beginning. Obviously this is a vast field filled with ever increasing difficult and highly technical methods but the point is just get to the level where we can at least finish an intro course, then learning the rest on our own is possible over time. If you've never seen the breif machine learning intro in 15-388 it's pretty straight forward, he walks through a lot of the notation.

Anyway let's see how far we get good luck
Ebenezer Shittingbanks - Tue, 07 Jan 2020 01:58:54 EST 59DcS8W9 No.38351 Reply
OP, listen here I've been double jolly african-americaned. I deserve an honorable mention in your cirriculum for mentioning Introduction to Computer Music. Not sure if it was here or 8chan since I guess it's not in this thread but anyway lol it's cool to see that in there, Danenberg is nice guy.
Ebenezer Shittingbanks - Tue, 07 Jan 2020 02:00:29 EST 59DcS8W9 No.38352 Reply
OP, listen here I've been double jolly african-americaned. I deserve an honorable mention in your cirriculum for mentioning Introduction to Computer Music. Not sure if it was here or 8chan since I guess it's not in this thread but anyway lol it's cool to see that in there, Danenberg is nice guy.

Also the book is called GEB DDD
Eugene Grandway - Thu, 09 Jan 2020 14:51:11 EST TV4L/bBX No.38356 Reply
Can I safely skip PAPL if I've finished 15-150 or CS3110 and 15-210(Parallel Algos)?
Matilda Fannerstit - Sat, 11 Jan 2020 02:51:25 EST x6K3CZQk No.38357 Reply
Sure, that's why there is 3 'workshops', if you know software don't bother with that one, in fact you could skip everything and pick the intro AI course you want to know, and just backfill as you go. Zico Kolter has a linear algebra for ML intro page: https://www.cs.cmu.edu/~zkolter/course/linalg/index.html and Strang will teach you calculus literally from the first page of his book on OCW. Yes, the first page.

What I'm doing is painstakingly building it all from scratch, mainly because I taught a random guy working graveyards in a convenience store this material once and all I had to do was point him to CS0190/PAPL and smooth the beginner problems, mainly the problems of 'I can't understand Chapter 2 so I give up' which is most people when they take any course. He was sitting around with just a phone, watching sports highlites and shitposting on wechat, and I thought why not learn something, you're here for 8 hours with nothing to do except be interrupted for instant noodles purchases by drunks every few hours. From there I decided, why not do math as well, and from there I decided, why not do AI as well since we're at it.

Another point is, you can accomplish a lot of things if you just do it incrementally everyday. So far we're on Chapter 6 of PAPL, we did half of Tao's /Analysis I/ Chapter 2, we read some of an AI paper (i was mercilessly killed by long hours at work all week, worst time to start this meme workshop) and we did this all in 6 days. Most people if you told them 'oh hey, read 6 chapters of PAPL, do all the exercises, watch this CS0190 lecture, go through a dozen inductive proofs in Tao's book and start reading this Turing paper on discrete state machines' they'd just give up. My not obvious point is that you can do a lot with just a daily commitment, even if you're doing an obscene amount of work already and have life obligations to fulfill, it still can be done. Though I completely screwed this week and was forced to do it after I worked, resulting in piss poor and often confusing commits which I have to go back and rebase/edit.

Anyway this is all experimental anyway, I'm just tired of hand-wavy ML tutorials on coursera where you really don't learn anything, or curriculums that assume a background so I'm going to write my own. I also think the present state of AI is just statistics tricks and not even close to AI, I'm hoping some anon reads the things I will be posting and actually create something interesting that isn't just statistics being manipulated. Maybe it's you
Matilda Fannerstit - Sat, 11 Jan 2020 03:30:19 EST x6K3CZQk No.38358 Reply
I'm also going to slip in some things to highlight the material in PAPL, such as an old book from 90s where it teaches functional programming using math notation, maybe read a TAOCP chapter, chapters out of programming in SML, the software from scratch meme curriculum is not just CS190/PAPL the style will generally be 'we just learned what X is in this PAPL chapter/lecture, let's go through this seemingly difficult resource and discover it isn't all that difficult to understand'
Sophie Buzzgold - Sun, 12 Jan 2020 04:54:58 EST vZ4zomq9 No.38372 Reply
Very cool.
For the docdiff, shouldn't the merged list be entire words (lower/upper), not individual letters, otherwise you just quickly end up with an ordered list of the alphabet.
And for the num-max(), shouldn't it just be num-max(dotp(v1,v1), dotp(v2,v2)),
since the formula on the assignment page is num-max( ||v_1||^2, ||v_2||^2) .
The magnitude of vector v1 is sqrt{dotp(v1,v1)}, but if you square it you just get dotp(v1,v1), right?

(I read the cs19 chapters a couple months ago, but going back and doing it properly), trying to keep up, but the nile one seems really tough.
Cornelius Buvingpun - Thu, 16 Jan 2020 23:47:33 EST x6K3CZQk No.38395 Reply
I fixed that , sometimes I just paste stuff I have lying around to not break the commit chain if I can't spend an hour writing after an hour watching a lecture or reading, and then I will edit it over a few days correcting all the mistakes. Lot's of things will be routinely screwed up which I will go back and redo. My new little workshop will take a long time, we're only 11 days in. Starting w/Tao instead of a mind numbing pre-calculus tomb was a good idea it seems though. We may be able to kill 4 courses with his single book and can just supplement a few lectures. His linear algebra notes are pretty much perfect too so far, at some point I'll just start doing that too at the same time as analysis I.

The goal is still what is the bare minimum somebody needs to successfully complete these modern courses in AI where they will be at a point where self-directed study is possible to pursue whatever they want. I have about a dozen or so self evaluation tests from various grad intro courses, as soon as we can pass most of those evaluations we're good to go and will just go straight into the target courses. That's still going to take many months, also I have almost no time to shitpost, I probably shoudln't even be posting this right now.
Cyril Woshstodge - Wed, 22 Jan 2020 11:29:52 EST XHzkTYGV No.38410 Reply
Whenever there is a discussion about OCaml, someone will inevitably dismiss is due to it having a GIL. Is that really such a big deal?
Lydia Herryham - Wed, 22 Jan 2020 19:34:17 EST x6K3CZQk No.38413 Reply
From Yaron MInsky:
"The OCaml runtime has a single runtime lock, which means that one must use multiple processes to take advantage of multiple cores on a single machine. For the most part, this fits our development model well: we prefer message passing to shared-memory threads as a programming model for parallelism, since it leads to code that is easier to reason about and it scales better to systems that cross multiple physical machines."

What he means by scales better is you can hide the cost of sending a message in the network between multiple machines. Shared memory (multicore) scales well only at smaller core counts. If Jstreet is doing something like 100+ parallel computations at the same time then the cost of data movement increases exponentially w/multicore. This is because multicore makes copies of reads in cores, and a write has to kill all those reads so the new value can be pushed to all cores. Imagine doing that for a very large core machine how slow it would become. So for them, and their specific work doing massive parallel computations, multicore support doesn't matter whereas somebody writing a video game for a machine with 12 cores, it would matter, or if you had a specific use case and manually tuned a program for hundreds of cores that did not require a lot of writes. You should take my opinion here with a grain of salt though, I'm not heavily experienced in multicore development except for my own toying with it.

If you're interested in multicore, I highly, highly recommend MIT's 6.12 lecture slides and recitations from the meme list to see all the various pitfalls of modern concurrency platforms, and how you would go about writing lock free algorithms that exploit your own model of sequential consistency, building a hypothetical GIL free python or OCaml program. There are mutlicore enabled languages out there but you likely would want to measure and tune this not just use an out of the box language provided implementation that merely uses an existing concurrency platform like TBB templates, OpenMP or Pthreads. They primarily shill their own MIT written OpenCilk for this which is dead simple to understand and use. Of course using OpenCilk comes with it's own disadvantages as it's compiler is beta and only runs on Intel IIRC. Some of these wall street outfits are running FPGAs as well which may have their own sequential consistency model and not even require a runtime lock too, it depends on the architecture you are working with. So the short answer is 'it depends what kind of parallel work you're doing' and the long answer is 'read the slides from 6.172'. If you read those slides, and you have any modern Intel CPU, you can experiment on your own machine building a highly opitmized kernel for yourself that takes advantage of all the disabled by default options or maybe you have a box sitting there you'd like to use to process some kind of massive multicore video or audio encoding, could use OpenCilk to glue all this together run your own multicore programs.

>meme workshop
I had to take some days off because of life. Basically I operate with no days off planned, then life just comes along and gives you a day off, so no need to plan for one. Slowly finishing the second chapter in Tao's book, which will become faster now that anybody reading has a background in proofs and doesn't have to stare at them for 20 minutes trying to unravel what's happening. I spent a few days toying around with the Cryptopal's challenges in Pyret, because it's totally possible to do them in Pyret so far. Every major crypto attack that makes the news you can almost always find them in the Cryptopals exercises and if you've already done them, you immediately know what happened without having to read one of those terrible sites where they bought a domain named after the attack and post a medium-blog style post about it.

Speaking of terrible blog posts, this guy's "story of a self-taught AI researcher" is half insanity, half practical advice: https://blog.floydhub.com/emils-story-as-a-self-taught-ai-researcher/ for example his recommendation that you use flash cards for months to learn that DL book is insanity. There's zero math recommendations either, besides Fast.ai https://github.com/fastai/numerical-linear-algebra/blob/master/README.md which is OK for applied hacking. The greatest source I've found for this is still Strang's new 18.065 course and although I did manage to get my hands on most of the book (no digital edition exists) instead of handing out pirate versions I'll probably just mix Tao's notes on LA with 18.065 assignments and lectures, but anybody interested Stellar has a lot of scans from prev semesters on there with vast parts of the book, or just buy it.
Nell Fudgehug - Thu, 23 Jan 2020 05:57:14 EST VwaKI1zF No.38414 Reply
Jane Street seems like such a cool place to work for. Do you have any tips for me if I want to get an internship there in 2 years? Like what should I study to prepare myself for exactly the kind of work I'd be doing there, or how do I make myself stand out if I'm studying at a garbage uni.
Lydia Herryham - Thu, 23 Jan 2020 16:30:17 EST x6K3CZQk No.38416 Reply
Their internship pays around $10k/month apparently so is highly competitive but you can beat the competition by doing the following:

Pay specific attention to everything Yaron Minsky has said about being modest about one's own ability and education. The biggest problem in most tech companies is you have these people giving solutions when they don't really understand what they're talking about. AKA bluffing. A fintech company doing millions of tiny loops/trades disaster can strike with the smallest edge case you didn't consider because you insisted on a solution you didn't fully understand which will put them out of business permanently. So the #1 rule is do not provide a solution unless you are absolutely sure and can back it up when challenged by some guy with a PhD.

Instead, when you are new what you want to do is think through the problem, which is exactly what PAPL/Brown's cs019 class teaches. This is what they want, you describing to them exactly how you would try and understand the full domain of the problem for the sole purposes of putting you on a team somewhere and they will know you can communicate in a helpful manner. As for the technical specs of JStreet, I believe they use S-expressions for all their configuration files, because these have to be parsed and if you took PAPL/cs019 you'd know that sexp make it really easy to write a parser. They use emacs with their own proprietary patch review system. (this is all on their company blog). They rewrite basic unix software, like rewriting a mail transfer agent to OCaml. They really really care about correct and readable code because of billions of dollars on the line every second so CMU's 15-122 class on contracts, or 15-150 proving programs are correct will help you here. The book 'The Art of Software Security Assessment' would def be worth a flip through as well, just to understand how code review works. Not that you'd do all that in the interview but you would know of corner cases because you've already seen them. My strategy if I was interviewing would be to deny them asking more questions, by fully working out a problem I already understood. For example they ask you 'how would you solve this problem'. I would write a skeleton with tests first just like cs019/PAPL to flesh out the full domain. I would find an invariant to help my implementation appear correct, avoiding all words such as 'prove correct' since that opens them up to start testing you on proof knowledge, which is their way of telling you that you violated their rule of using terms that you don't fully understand. Being very careful with what you say is paramount, people like to naturally exaggerate or casually throw around words without fully knowing their meaning. "Oh I didn't really mean prove, I meant this is reasonably correct" means you still failed the interview. I would pseudocode in temporary comments some of the contract syntax from CMU's 15-122 but not go overboard, just showing to them that yes, I can actually reason about something fully and not just turn out a simple crap function and go for lunch. I would constantly probe them for information, again this is strategy, keep them talking on your terms this will shorten the interview.

They also want you to know some functional programming despite what their application writeup claims, (see the interview reviews on glassdoor) but you wouldn't want to do the interview in OCaml you would do the interview in whatever language you have always used but know enough about OCaml that you can at least read an OCaml program (they will teach you OCaml). Strategy: the people in the interview room are all experts in OCaml so if you start writing something they will test you 'do you know that library exposes X scope to the local environment? do you know the big-O of this OCaml sort built-in?'. However if you show up with your obscure expertise in some less complex language, or even writing in Python you'll have an easier time. I would probably do the interview in Standard ML personally, because it's syntax is very simple for a white board, the language spec is sealed in time and easy to understand fully, and CMU has both 15-150 and their parallel algorithms course for a huge amount of practice in SML. You could also do the Cryptopal's challenges in SML, anything to get a lot of experience. That's me though, if your school is making you take a dozen Java courses then absolutely do the interview in Java but make sure you know correct Java, like contracts. Prof rob simmons from CMU who used to teach 15-122 has talks on this: https://www.youtube.com/watch?v=lNITrPhl2_A and Cornell has a site for this: https://www.cs.cornell.edu/courses/JavaAndDS/ (the really bad UI beard images lead to videos on youtube).

So anyway my strategy would be to:
  • Watch this MIT lecture on how to give a talk, because that's what you're doing in an interview: https://ocw.mit.edu/resources/res-tll-005-how-to-speak-january-iap-2018/how-to-speak/
  • Make sure you know absolutely everything your school is teaching you. Even if it's a garbage school it's no reason for you not to be able to totally slay the material by taking it seriously.
  • Take an operating systems class at your school so you know how to write a basic systems program. It doesn't matter if this is in Java or whatever.
  • Take every algorithms class you can, and do extra material. If your class doesn't cover the last half of the book well you should cover it yourself because you have access to all those TAs and profs and grad students at your school to help you finish the rest of the book.
  • Do Cornell's cs3110. It doesn't teach you OCaml, it teaches you how to learn any language and I don't see how they wouldn't hire you if you knew that course(see below).
  • Flip through the Art of Software Security Assessment to see how auditing, code review is done.
  • Take a course on parsing/interpreting if your school offers a compiler course
  • Strategy: take a course on probability. MIT's 6.041SC is great for this if your school doesn't offer a course. Learn everything you can about probability in 2 years because you may find yourself not doing software at a JStreet internship but trading or doing something else if they test you on probability knowledge and like what they see. It also means you can learn random algorithms, stats, all highly desireable things in fintech.

So tl;dr almost all you need is already at your school, no matter how shitty it is. The only blanks needed to be filled in are really Cornell's 3110 so if they do ask you a functional programming question you understand it and because of yet more strategy, almost everybody working there went to Cornell and similar schools, so your interview becomes you eating up time talking about cs3110 with some ex student who works there. cs3110 is deceptively easy, there is a lot of work there understanding how those static/dynamic semantics work. I wouldn't rush through those, I would also try doing the recommended texts at the end of each chapter. For example at the end of the higher order functions chapter, they recommend a book from the 1990s where HOF are explained using math notation.

Anyway this has to be my last post for a while, no time anymore good luck anon
Lydia Herryham - Thu, 23 Jan 2020 16:47:15 EST x6K3CZQk No.38417 Reply
Eh, it would also help to watch 'Effective ML' talk Yaron gives every year to Cornell's CS3110 which is floating around youtube. After look at some of their open source code, and their style guide. Not every successful intern actually ends up working there, remember these ivy league kids have golden opportunities to FAANG outfits or access to capital through friends to start their own ventures whereas you don't have any of this, making it more attractive to hire you instead.
Samuel Honeyridge - Thu, 23 Jan 2020 19:02:14 EST x6K3CZQk No.38418 Reply
Some more advice I left out from experience doing the awful interview dance of phone screen, whiteboard, lunch with future coworkers, another whiteboard interview etc.

First the application/cover letter. Be aware anything you write here, they will test you in the interview. "I took a class on compilers" well now you're going to get an hour of compiler questions. Be brief, tell them exactly why you want to intern there. Remember they are reading a million applications. Don't mention anything about language "I love functional programming" because what if tomorrow they decide not to use OCaml anymore. I would write I want to work there because your research about the company led you to believe they are the best to teach you, or you are highly interested in producing software that is correct and easy to read and would like to learn how this is achieved. Before you send your application print it out and think of all the questions they may ask you about it. The less specifics you put on the application the better. I once had some engineer guy ask me about a specific thing the entire interview because I stupidly put it on my resume. Luckily they still hired me anyway, likely because the other candidates were even worse than me carpet bombing their application with topics to grill them about not because my answers were all that great.

The really horrible phone screen guy everybody has to deal with has a list of answers, and your esoteric solution to his questions will fail even if they are correct because he has no idea, he's literally in a car driving around and just shouting orders at you "Name three unix programs who's names are only two letters long and what they do". I always probe these guys a little before answering because you only get one chance to answer.

The lunch after the highly stressful whiteboard interview is still an interview. It's like those lie detector tests where they switch it off and tell you 'okay let's just relax and take a break' you aren't actually taking a break. In the lunch you just try to be somebody they want to be in the same room with all day everyday. Don't tell them your schools is shit, this violates the 'Extreme Ownership' management style of making excuses and undoubtedly one of them will make a comment about how plenty of people worldwide can never even get to school implying you should be grateful. Always be positive and give the impression that you take charge of your own life. Good topics to talk about is NY, what do they like to do there, what are the good local bands you should be seeing, where's a good place to live, etc. Nobody likes to talk about work over lunch, try not to mention anything about school or work unless they bring it up. Try to not talk about finance either.

If you actually do get the internship, take notes so you never have to ask the same question twice. Pretend you are still at school and study after work, like their proprietary code review thing, their style guide, anything. They will pick up on this 'hey this guy improves every single day and doesn't need to be babysit'. They use Mercurial (hg), so this is an example of what to study when not at work. Or study emacs. You don't want to be asking a bunch of mercurial and emacs questions everyday. If it's going good and you are nearing the end of internship ask them to make you an offer for F/T and tell them you plan on continuing your education P/T at whatever NY university. I'm pretty sure they pay for your school. Now you got what you wanted, a better school and fully paid for.
Doris Pudgeset - Sun, 26 Jan 2020 08:06:32 EST q1IFz2oJ No.38427 Reply
How retarded would it be of me to drop out of uni? I'm studying maths and I can tell already that a bunch of things I would have to learn are completely useless for CS. Money wouldn't be an issue because I'm doing some freelancing and my country isn't that expensive. If I dropped out, I would have the freedom to study exactly the things I know will be useful to me. The only concern I have is how I would get out of here without a degree because of visa requirements or even just passing a resume screen. I know you're in a similar position, I think I read somewhere here that you got a job in a lab due to sending an optimization pr? So, keeping in mind my only real concern is job opportunities 2, 3 years from now, do you think it would be retarded to drop out?
Jenny Fankinway - Wed, 29 Jan 2020 05:28:16 EST x6K3CZQk No.38434 Reply
Always finish what you start. That is more important than anything else. Never drop out of something. I was the one, who dropped out of everything and had to do this all the inefficient way by trying to backtrack and teach myself, which is why I have sympathy for my own idiotic kind and have chosen to create a meme list how to backfill this if you royally fucked up dropping out of everything and need to redo it from scratch.

If you have access to people with PhDs then learn from them who cares if your curriculum is trash, it doesn't matter, what is important is that you are physically able to discuss with accomplished and very experienced people to bleed them of their knowledge first hand. My other answer to 'i can tell already a bunch of things are useless for CS' is to respect the people teaching you these topics, because they must know enough about it to know what you'll need in this field, and you can't know what you don't know. I never thought I'd need differential equations to program a drone, but if anybody here has done the 'physical systems' course from CMU, you do. Things like that I would have never known. For sure I have opinions about this and have shilled CMU and Brown's/Cornell's curriculum as the kind of course I wish I had in school but you can combine both, your shitty curriculum with whatever is in the meme list, and have no excuse to not graduate with the highest honors. Without a degree, you will have an extremely difficult time getting out if that is your plan. I lucked out with hand written doctor notes recommending me and I only got that job because nobody else applied, it paid too little and I was willing to learn their obscure field of research, and optimize for an even more obscure architecture. This is all luck, nobody else qualified applied because everybody else was chasing high paid internships. I would go through Robert Harper's language book PFPL and then get people at school to help you with it whenever you get stuck, or take Ryan O'donnell's TCS toolkit course and then have analysis people help you with it.

But of course if you know you're ready to drop out and go out on your own you should do that but consider there are benefits to staying and squeezing out all knowledge you can from your local surroundings before you decide to drop out.
Jenny Hucklechit - Wed, 29 Jan 2020 14:24:10 EST AlSckYDp No.38435 Reply

I second this. I'm at a no-name school and, doing CMU/MIT content in parallel, all the lectures turn into review sessions.
William Dartwell - Wed, 29 Jan 2020 23:29:07 EST mOweqHzT No.38436 Reply
Is it worth pursuing postgrad if I am poor?
William Dartwell - Thu, 30 Jan 2020 08:29:52 EST mOweqHzT No.38437 Reply
For the anti-symmetric order in Tao's analysis. Would it suffice to show a = b + 0 and b = a + 0? So that a = b and b = a. Where c and c' are both zero respectively?
Priscilla Drablingwidge - Sat, 01 Feb 2020 14:19:01 EST 4qa4iAjK No.38443 Reply
You put me on a great path, I am so thankful. These CMU/brown resources are on another level. Hopefully you'll keep updating the AI course, it was getting good.
Reuben Bamblehood - Sat, 01 Feb 2020 14:47:20 EST x6K3CZQk No.38444 Reply
Sure, I reworded that section other day (haven't updated the page yet) but that's what you're asked to do, if two inequalities can be switched and are still true, then clearly they must be equal. My lengthy example ends up a = b + 0. I'm almost done the multiplication chapter then we have to do sets, and can resume cs190 since they use some basic set notation to define big O estimation. Eventually we'll do a trig crash course before doing the calculus chapters, a probability class, Tao's Linear Algebra notes w/some lectures, and we're done. They fill in a lot of blanks in the grad intro ML courses. Once graph theory is introduced in cs190 we can jump into Berkely's AI class. The AI papers I've been reading are better than expected, though I haven't updated that section in a while partly because one of them gave me an idea for something and it ended up working.

I also slacked last two weeks because of various social and work commitments I failed to plan for, and reviewing other courses to see if they'd be suitable but cs190 is basically a discrete math course and a programming languages course built into one. It teaches imperative/mutable style eventually too if anybody is wondering. If we can go cs190 -> Real World Algorithms directly we'll do that while doing a bunch of other AI courses.

My other goal is to try and avoid local installs for anything as long as possible (using online jupyter notebooks or interpreters) because everytime I travel somewhere nobody has a laptop or reliable access to desktop, but they do have a phone with low cost internet access even in the most remote areas. I also remember that MIT webdev workshop, where even MIT students had a lot of problems getting basic software installed and working because most software is a pile of junk. If anybody has seen those workshops a significant amount of time is spent in lectures with TAs going around trying to get even git to work. I also don't carry a laptop so if I have 45 minutes downtime somewhere I want to be able to try a Cryptopals exercise and run it, so far this has worked out.

This is grant funded in most countries, if you can convince some department that you are best suited to carry on their research, with faculty recommendation letters, top undergrad grades or by getting involved in their research while in undergrad they will pay for your tuition or you could work and pay for a P/T MSc which is $10-30k depending on country. The advantage of course being, if you pay for an MSc somewhere that has local accreditation well then immigrating there is simple to do. That's why these are relatively high cost degrees you're buying immigration status. You pay Johns Hopkins U or Georgia Tech U for an online MSc you can legally greed card status into the US as you have proven credentials.
Oliver Huvingworth - Wed, 05 Feb 2020 09:31:22 EST Dklh/RlO No.38464 Reply
Well, I plan to get my postgrad abroad, either in ETH or Eindhoven. How can I coordinate with the relevant professors about their research?
Wesley Blottinglock - Wed, 12 Feb 2020 02:01:16 EST x6K3CZQk No.38487 Reply
I'm not sure but I'll tell you what I did.

I also recently resumed the curriculum because of insanity evacuation. What a nightmare, too long to post here. It's in the water supply up to two weeks, can't even shower without a space suit on. Most disturbing decisions of my life who to take with me to get out. Prepare yourself, buy water and store it.

Anyway, I collected letters of reference from the scientists I worked with and they wrote me recommendations to grad schools. To contact these people I simply followed what they were doing in conferences and showed up to said conference, talked to them and convinced them to give me a chance (which I later fucked up, and dropped out because I've dropped out of all schools) but anyway it worked. You have to find the people you want to work with and manipulate your life to do so. Anyway I'm in quarantine and just going through all of Lustre's releases for the lelz https://www.youtube.com/watch?v=Bdywzwu4a-k I don't know when I'll get internet again, meme list will resume sometime this month. Stay strong frendz
Ernest Goodshit - Thu, 13 Feb 2020 10:29:24 EST x6K3CZQk No.38491 Reply
All is well and the AI curriculum continues with 15-122. It's too bad CMU only put half the course on OLI, this is actually better than the lectures I saw so far. When we finish some more of the Cryptopal challenges and if you like security work, try taking enough of 15-213 so you can complete the attack lab then it's highly likely some recruiters from Bishop Fox or w/e security outfit may be interested in hiring you despite whatever open positions their website(s) claim. Then you can get paid to finish the rest of the AI curriculum, 'deep learning sec' is interesting, as it can be fooled.
Jarvis Tillingspear - Fri, 14 Feb 2020 05:34:14 EST s0ZWEgcU No.38494 Reply
Would you share what kind of freelancing work you do, how is the workflow and how do you seek new clients? I have basic programming skills (c, python, basic algorithms and data structures like search and sort, lists,heaps,trees etc) and I want to start working remotely to get some income, income can be low since I live in a 3rd world country, but I would like to improve my material situation and live on my own.

Of course I'm aware I could get into web dev, so I'm mostly curious of what else is out there.
Sophie Samblepune - Wed, 19 Feb 2020 12:49:27 EST 3A29wm+d No.38499 Reply
Nice to hear you didn't get carona'd.
Incase you didnt know: the fall 2019 version of 15-122 on OLI has 14 modules. It includes arrays, searching and sorting and a whole unit on complexity including some Big-O content. Theres also an ongoing one for 2020, but i didnt check it.
Emma Bullylan - Wed, 19 Feb 2020 23:20:47 EST 2SF2LwlP No.38500 Reply
>consider there are benefits to staying and squeezing out all knowledge you can from your local surroundings before you decide to drop out

What if you go to a University of the People shit-tier school (except it charges tuition)? Is there really any point in slogging through that? Wouldn't a Github resume that shows the work you did in these CMU/Brown/Cornell be better than going through the motions of getting that shitty degree?
Jarvis Foffingfuck - Fri, 21 Feb 2020 01:41:05 EST x6K3CZQk No.38501 Reply
Interesting, I'll go through the other semesters on OLI, though I don't know if I want to cover an entire imperative course, I'd actually rather cover Cornell's 3110 and the vast trove of recommendations at the end of each chapter. I liked 15-122 when I did it w/lectures in the past but most of the material you can kind of figure out yourself, whereas 3110 there's some tricky stuff in there, plus 3110 teaches you every single language all at once just it doesn't look like it at first glance. Functional AI is also awesome, if you're going the writing your own custom software route. It's one of those things where you think to yourself 'no way will this work' and magically it does, and runs without a problem even in production searching through terabytes of data feeds.

There's another thing I'm doing and not telling the fool following my little AI side gig, knowing the fundamentals of mathematics and computer science in a Tao instructed way, is in extreme demand, because there are places that look to hire people who can scale up their research platform so that hypothesis testing and generation is automated, correctly. They're called Jane Street, RenTech, DE Shaw, etc. There is no better way to know this than doing current curriculum AI. I don't want to include this as a shill for these kinds of companies but it's true. I also kind of hope somebody follows my little meme list and writes their own Jarvis or something, focusing on 'big picture' papers and avoiding the tedious statistics, but either way if you don't become Iron Man you can still find a home manipulating wall street.

I took a bunch of time off because of coronachan and a side gig which was far more successful than I anticipated but I'm still committed to reckless education with no credentials so the AI curriculum continues.

Depends on your goals, we live in a credential oriented world. I personally hate school, I don't like going everyday, I don't like being forced to take things I know I'm not interested in, I follow the Erik Demaine/Peter Thiel opinion you should just do research yourself but he actually did go to MIT, and took all their shitty electives anyway. If you choose to dropout you need to choose exactly what you want to do and focus all your time on that, which is not easy to do, it took prison and getting released to the shittiest neighborhood in my entire country for me to get my shit in order, otherwise I would've just drifted like I did before. I would have never done these courses, would've never got to where I am now. School at least is a powerful motivator, you actually have to show up and complete it. There's no motivator when you leave, I know because I dropped out of many, many schools and spent all my money on a Combat 84 jacket and tattoos, and lived in bars enjoying the pleb goof lifestyle. That said every successful hacker in history has dropped out of school, so if you have their persistence and motivation, and an absolute clear idea and path what you want to do then by all means do so. Before you do though recognize you are in optimum networking environment, you have access to other students who will want to start things with you and people with PhDs to help you with things you may not even anticipate right now. I also did a year of UoP and while it was shit tier, I still had an interesting convo with one of the Javaschool profs who worked at NYU who specialized in formal methods. We never did anything close to formal methods but I got to pick his brain without paying consulting fees over email, I considered that a win. I also don't think anybody looks at github/previous things you did these days, the industry is even more ridiculous than you think. See this: https://andyadams.org/everything-i-know-about-freelancing/

Something else you may want to try, which is a longshot but still possible, apply to NYU in Abu Dhabi. It's fully paid for, two people I went to UoP with ended up there in second year. Anybody from any university can apply and they're pretty generous with handing out fully paid for transfers but it all depends on your grades in your country, if you are slaying your terrible school you have a good chance of being accepted. NYU is entirely merit based scholarships just they don't advertise this all that much.
Jarvis Foffingfuck - Fri, 21 Feb 2020 01:54:50 EST x6K3CZQk No.38502 Reply
also NYU shanghai, due to coronachan nobody is applying from what I've been told. If it's do or die then try and just go to class in a space suit. They cover your room/board and working in Chyna is no problem for extra money. You need the best grades in your school though
Hedda Gapperville - Fri, 06 Mar 2020 23:04:20 EST NrSmkjTk No.38526 Reply
OP in your math curriculum are you ever going to work through practice books?
Hedda Gapperville - Fri, 06 Mar 2020 23:05:20 EST NrSmkjTk No.38527 Reply
OP in your math curriculum are you going to work through some practice books like basic math
Samuel Honeyforth - Wed, 18 Mar 2020 00:43:10 EST x6K3CZQk No.38534 Reply
Yep though I plan to burn through it much faster than Tao's math books which pay extra dividends if you carefully do them. I haven't updated this week because of pandemic madness but since we're all getting quarantined eventually during this now global happening will have plenty of time to update soon. Note in all the WH briefings they talk about models and integration functions, we'll do all that soon. When you start building models it's incredible how complex they get in terms of identifying bias, I'd also like to do if there's time (we have a whole year) to finish MIT's computational biology w/machine learning. It assumes you already know ML but then goes about teaching you genetics and computational bio methods from scratch.

My next update is using induction to prove complexity of a recurrence then it's back to basic math, and all the assignments in cs019 just I have to take care of family like everybody else on earth right now. Sooner than later we'll all be locked down like I was before then nothing but time.
Shit Brebbershaw - Sun, 22 Mar 2020 02:36:46 EST tZqF4ai3 No.38535 Reply
How are you preparing for lockdown? Here in School my parents in full denial mode.

Also want to say that I am 23yo React developer will start your curriculum, I want to blog from time to time how things are going.
Rn I read like 10 times all of your posts and made half way through 15-150, but then I gave up because material is hard to complete cs beginner. Also I have 2 semesters of math UNI and then dropout.
I'm feeling that my react and js code is complete bullshit, often I bring a lot of bugs that very hard to fix later when project grows and website has a lot of unexpected behavior and it need crutch for work properly.
Shit Brebbershaw - Sun, 22 Mar 2020 02:44:39 EST tZqF4ai3 No.38536 Reply
Oh, jeez I forgot to say that I will do Brown's CSCI 0190 then again 15-150&3110 simultaneously. Also I spent like 1hour trying to download lectures from panopto and nothing works.

Also how did you manage your time, no way I can find strong community here in School to inspire me and work together and my girlfriend seeking attention 24/7 so when I finish my work she wants to watch movies with me.I am thinking about return later from work and teaching on work instead of home lol.
Also one trouble that I have neighbors witch are very noisy and they are driving me mad, so I need some music to focus. I feel that music definitively distracting my mind, but it's better then listen neighbors screaming to each other about tasteless soup
Albert Blatherfuck - Sun, 22 Mar 2020 14:31:36 EST x6K3CZQk No.38537 Reply
I once lived in an area declared an 'overdose crisis' and there were screaming sirens every 20 minutes all day every day. The only way I could function and sleep was to purchase a white noise emitting device which sounds like water/air rushing or an artificial fan noise to drown out the outside noise as I found even music without lyrics too distracting though now I can listen to it and work at the same time, it just takes practice concentrating over a few months. I also got up early in order to keep a social life, a few hours in the morning pay off when at night you can see people and do normal things without school consuming your entire life. If you complete CSCI019/PAPL you should have no problems dealing with courses like 15-150 later and it will definitely help you write better code, the whole brown cs019 course is about engineering large systems and building entire programs to test them just in the beginning it doesn't look that way.

I update the meme AI curriculum now there's a window of time, both my now 2 jobs were declared essential pandemic services but since I now (like everybody else) have zero social life during the lockdown pandemic there's time. They're throwing around all kinds of stats in pandemic briefings, and graphs showing exponential growth without talking about statistical processes that work against growth, that will eventually overtake the growth of the pandemic spread. Going to try and jump faster into these topics since they are now highly relevant
Fanny Croffingfoot - Sun, 22 Mar 2020 17:25:05 EST NrSmkjTk No.38538 Reply
How do you find these exceptional resources? Do you follow a specific group of people on twitter like the professors or do you actually browse these different cs courses being offered all over, I feel it is very important to stay on top of that stuff because working with an amazing resource for 10 hours is much better than working with a bad one for even more time.

Couple more questions, What do you make of Anki in learning this kind of stuff? medfags shill it constantly but I cant see it being useful for mathy stuff, maybe memorising proofs and stuff.

And what do you make of supplements, do you take any? I've read a couple comments on HN about ir light increasing focus and concentration periods and the fact that DARPA uses electric simulations to literally half the time it takes fighter pilots training time, some of these things must be viable.

Last thing, have you read professor Sussmans reading list? http://aurellem.org/thoughts/html/sussman-reading-list.html What do you make of the 'unexplored ideas' he mentions from his former students. I suspect there are tons of papers from the 90's and 80's that never got to see the light of day but would have massive impact.

Thanks OP
Edwin Honeyford - Mon, 23 Mar 2020 14:23:02 EST tZqF4ai3 No.38539 Reply
I'll try to use my headphones with some generated noises while studying, will describe the effect over time.
On that course is sad that lecture at the beginning was half way without video and that lecture was about how to calculate O(N). This is what I cannot get during cs15-150. Will try to learn it from papl thought. I hate video lectures especially all questions from students are very stupid (but that's better then culture of not asking questions at all like we practice in Schooln uni) and professor is cool, I followed him on Twitter imminently, but sometimes his jokes are annoying.
Also I started from last lecture accidentally and was very overwhelmed what's happening, why he is starting intro in cs from reviewing npm security holes. I think he will be happy that GitHub bought npm.

Caught myself on that I am doesn't like practice. Like you really reviewing material and actively thinking during homework, but I dislike teaching myself new languages, it's physically hurts my head. Like I can do that in shitty js in minutes and stuck to do so in pyret. It's like you have a flashlight and you can hear in dark room from where sound originates but once you focused light in that place, you can hear sound from another place and you move your focus. So you cannot see that thought well.
And I am thinking like ok, I will finish that lecture and stay doing my hm, but once I started I am thinking I don't like it and watching another lecture... This is bad, any suggestion on this? Like how many lectures you read / watch before doing assignments and once you finished first assignment you need to watch lectures again, when you decide to take next hm? What's thoughts inside your head I need to know, lol.
Edwin Honeyford - Mon, 23 Mar 2020 14:28:40 EST tZqF4ai3 No.38540 Reply
Jeez, hope you understand what I wrote. It's hard to write from Android. Google keyboard is really shitty.
What I am saying is that it's hard to know when to start doing assignments. It's hard to teach myself new languages, especially when you know how to do it in another language and need to know how to do it in New one. But I like teaching myself. It's like like curve when you first struggle to do basic things but then you know how to do then and you are very happy that you can express you thoughts in multiple languages.
Caroline Borryfet - Tue, 24 Mar 2020 17:43:00 EST J124xECI No.38542 Reply
lecture -> recitation -> textbook problems -> homework

CMU covers a lot of things, fast. The order I've listed above is suggested by TAs for 15-251 but generalises to others. These kids at CMU are almost all IMO/USACO/USAMO participants -- if it was anything slower or routine like at most other schools they would get bored lol.
Nell Beblingforth - Wed, 25 Mar 2020 19:01:18 EST x6K3CZQk No.38543 Reply
Somebody to follow on twitter is @Homakov, he started in nowheresville School making $6/hr as a rails dev and now is a global consultant, though lately he just talks about pandemic panic he has some good articles on there and his medium blog is actually worth reading too even if medium is highly cancerous. He is self taught, his advice is 'learn everything about X, then you can learn how to break X' which really is true.

There is still vast amounts of unexplored territory, like when you do a chapter out of TAOCP and Knuth reminds the reader that there exists a dozen problems that are still unsolved from the 1960s. Sussman's unexplored territory I put in the AI meme course list, to take with Berkeley's AI course whenever I get there, because he too covers all the things from the 1970s and 80s that aren't being worked on anymore and has a critical view of machine learning though there is of course tons of progress to be made there still. I have so far slacked on the AI material because it quickly becomes advanced and I'm still going through elementary math and PAPL at the moment but we'll get there.

I found these courses when I grew tired of the shit quality of MOOCs that dumbed down their material and wanted the real material, so found school's rich enough to just give it away for free. My only advice for CS019/PAPL is that once you start doing the assignments, eventually you 'get it' and then you kind of get every language after. It really is a practice leads to knowing thing, most people don't have the patience though they want to learn the latest language fad and then build something which is fine, but I went that route and didn't know shit in the beginning, I built tons of things that were absolute trash and had numerous sleepless nights trying to track down simple bugs or to find out why my app was crashing all the time under heavy load. Everything I fucked up is taught in PAPL or beginner CMU courses that I didn't do at the time. Big-O we do not have access to the Brown U recitations where a lot of the big-O stuff is covered but again it's a cumulative affect, you get introductory here and there, kind of get an idea of what's happening, then later in an algorithms course you really get an idea because you have this insight from Brown's accelerated CS course already and aren't just totally confused like most other intro to algorithms resources I've found. Doing some stats/calculus later will help too you get another 'aha' moment when you realize how this modeling in math is done and everything fits together.

Anki, supplements, all that stuff I've never tried. I've just done all the assignments and then taught an invisible class using my notes and once I could effortlessly explain things I moved on. Granted I forgot a ton of courses (if I audited their book it'd prob all come back) but I think I would've still forgotten if I tried some crazy light therapy or whatever else HN shills. I'm sure there are some kind of bio hacks for learning we don't know about but I have no experience with them. The only thing I absolutely know about learning that is bulletproof: if you figure it out yourself, you will never forget it. Well, not entirely, you'll forget some fine details but in general for example if you solve a math proof using some technique you'll always be able to use that technique and even look for it in the future. If you fuck up an assumption, and find out you were wrong, 3 years later you'll see the same kinds of mistakes and be looking for them in papers. That's why I share CMU and Prof K's belief that it's best you figure this out on your own though at first this is a huge barrier where you don't understand anything, and it helps to have a TA around to at least point you in the correct direction so you aren't hopelessly lost by lecture 4.

Note that 15-150 is esp difficult because they blast past material covered in 15-151 (we do this in Tao's book for the most part) but if you do the assignments, it starts to make sense. Robert Harper's SML book helps too, it's one of the books I credit with helping to learn 'real programming' because he goes from explaining highly complex things in simple terms to just assuming you know something, which forces you to look it up yourself. The best way I find to learn a new language is be forced to do it, that's what I did when I applied and was hired at a university lab to write algorithms for biologists, I had no choice in the language at first so had no choice but to follow the documentation otherwise I probably wouldn't have bothered. Then they let me do whatever I wanted so I wrote it all in Ocaml since I remembered how easy it was to write algorithms in that Parallel Algo book from CMU. As for taking what seems like a massive list of courses and having no motivation, you just force yourself to do it. Everything cool in life has a massively shitty amount of hard work tied to it to become good at said cool thing. A guy winning some olympic medal spent every single morning training for years no matter what he felt like, wake up and be depressed, feel like shit, too bad get it done. Magicians sit around practicing all night when everybody else is out drinking with their friends. In my case I had run out of time, I wasted it all and it was either put in the work spending a week figuring out some obscure optimization assignment or stay where I was forever. That said it doesn't have to be completely shitty, maybe find a local band with no money and do their stage lightshow programming from scratch, it forces you to learn and devour this material. Somebody I know pre-pandemic and pre-meme list when I was in first year university and working for the campus radio station, this is exactly what he did, programming lights and they were touring the world before we all got screwed by the Shanghai Shivers. https://youtu.be/KawkyGZW82s LEDs are still dirt cheap.
Nell Billingville - Tue, 31 Mar 2020 17:50:24 EST x6K3CZQk No.38544 Reply
I started a TAOCP notes/walkthru thing as well I'll post it if I can get through it for a few weeks steadily while doing the other meme curriculum. The algorithm analysis in TAOCP is actually much easier since everything is 1 instruction, 1 cost. nb
John Cudgecocke - Sun, 12 Apr 2020 08:00:36 EST afYdzNrx No.38571 Reply
1586692836816.jpg -(107300B / 104.79KB, 400x633) Thumbnail displayed, click image for full size.
>I once lived in an area declared an 'overdose crisis' and there were screaming sirens every 20 minutes all day every day.
It's crazy, but lately I've read a Gabor Mate book on addiction (picrel). Author is a physician that dealt with addicted people from this neighborhood. Stories that he presents are horrifying. Big kudos to you for achieving that much in spite of obstacles.
Your work is a great inspiration for me. I've learned quite a lot from your curricula, as well as from you and your advice.
Edwin Buzzfoot - Tue, 14 Apr 2020 21:19:59 EST x6K3CZQk No.38579 Reply
1586913599839.jpg -(6870B / 6.71KB, 249x173) Thumbnail displayed, click image for full size.
Thanks, though my updates are completely inconsistent lately as I rewrite everything to be simpler and simpler, for example I just rewrote docdiff assignment to be much more intuitive, I'll rewrite nile and sortacle assignment as well since I don't want Prof K sending me a notification on github demanding I take everything down. The math meme curriculum I took a month off to review Cambridge's notes which are kind of awesome https://www.maths.cam.ac.uk/undergrad/studentreps/tripos-specific-resources if anybody is interested, but there's no lectures so you need to backfill everything. Anyway the updates eventually will be, when I can control time, all 3 fields at once, everyday. This is of course my own fault for routinely mischeduling time but eventually I'll get there.

My only advice really is: know exactly what you want to do, attack it like it's your body fending off coronachan, and you'll do fine. Reduce your plan to just a daily or weekly increment, if you meet the weekly or even hourly goal you'll be pretty satisfied. This is really what makes you happy in life, planning, executing and meeting some kind of goal whatever it is. You feel like you didn't waste your limited time here on earth. That goal can be anything like remembering to floss your teeth every night, it feels good to accomplish anything. Once you accomplish something no matter how small you kind of build a discipline muscle to be able to accomplish something a little harder. My problem was I drifted around never completing anything so my life was just little pieces all scattered like a deck of cards thrown out of a helicopter.

Also I still watch geohot's ridiculous 6hr Sunday live coding sessions and that's what I"m setting up anybody who's following the ai meme curriculum, so you can go work with him or even better become him x 2.
Ebenezer Blungerkure - Wed, 15 Apr 2020 04:13:04 EST m18WEyCF No.38583 Reply
Geohot's vids are motivating as fuck to watch even if you don't learn anything.

Question: how much of an issue is language when working at HK/Shanghai/Singapore/etc? Can you get away with only knowing english?
Simon Damblehotch - Thu, 16 Apr 2020 19:56:45 EST RTMuLrHX No.38595 Reply
Thoughts on wolfram and his work, His research in computational languages is really interesting and his new physics theory and how it relates to computer science is tingly
Nell Blytheshit - Fri, 17 Apr 2020 10:02:19 EST Jwq7K7iM No.38597 Reply
1587132139080.jpg -(180178B / 175.96KB, 1907x1073) Thumbnail displayed, click image for full size.
Finally completed Nile yesterday, took me about 3-4 days. I didn't even attempt it until I did the Data scripting assignment, that really gave me some good practice for fold,filter,map. (used a similar strategy as was used with frequent words, making a 2-tuple and storing the frequency in book(freq, title))
A few months a go i remember reading Nile and barely even understanding what the assignment was asking me to do.
My recommend() is ~7 higher order functions (but i made them their own functions with tests so i could easily follow the flow in the future).
Then when doing popular pairs i kind of wrote myself into a corner twice and rewrote it twice, but finally got it. What a high it was to complete it lol, small steps.
Each night while trying to sleep i kept thinking about it and came up with ways to improve it and how to tackle it better.

I found these two labs, which were created by one of the head TAs of the 2018 offering, which were used for the 2019 version.

btw for org-mode exporting to html, how do you do that "details" where you click on it and it expands the codeblock?

Was also going through most of DMFP (foundations and core) and afterwards found Wildbergers recent uploads about replacing propositional logic meme detective work math with simple 7th grade algebra via boolean algebra. Pretty neat.
Nell Dadgeshaw - Tue, 21 Apr 2020 19:46:31 EST x6K3CZQk No.38631 Reply
1587512791105.jpg -(77807B / 75.98KB, 1280x720) Thumbnail displayed, click image for full size.
For whatever reasons, I'm assuming Europen schools, most of the people working in fintech I met there before coronachan ravaged the land and forced my escape are from France or other European countries so language isn't a problem. If you're a software developer and are Chinese you have your pick of extremely high paying consulting anywhere in the region/Taiwan and you probably went to school with some nephew of a global telecom based out of China so will end up there on the board of directors or something instead of where I was, but Coronachan has changed everything so who knows now. Language doesn't really matter in HK except you should be able to speak some broken mandarin or cantonese to order lunch or negotiate with a local landlord. If you want to pick up mandarin watch this guy's channel https://www.youtube.com/channel/UCLNoXf8gq6vhwsrYp-l0J-Q it's filled with cringe thumbnais but there is decent advice in there how to learn Mandarin or Shanghainese if you want to work there like not focusing on the dozens of tones and grammar at first. If you want to practice mandarin go into Chinese VR chat like he does and talk with a guy larping as a pokemon.

I haven't read his book(s), I realize Wolfram is a famous meme and everybody writes off his books as crazy but I also watch Wildberger lectures and he's supposed to be a crank too but isn't so I'm willing to give Wolfram the benefit of the doubt that everything I know about him is likely false.

>so I could easily follow the flow in the future
That's good because there's a future assignment where 'if you thought you were done with Nile you must be in d-nile!' you have to add features to it. !! fuck. That damn impossible assignment except when you finish it, then you kind of want to rewrite it again and again. There's a reason they chose it. Wait until we do graph theory in 019 and you will get aha moment when you realize you can rewrite Nile to be even more simple. Holding the problem in your head and then walking around, taking a shower, doing whatever is how you solve it I find, that's how I did the Tao exercises. You work on the problem long enough it's easy to remember, it just sticks in your head all day/night and eventually it'll just solve itself I find. I have those two labs too, I'll include them whenever we get there I found them when looking up Pyret tensorflow in their git repository. org-mode look at the newer html5 elements: https://github.com/yyr/org-mode/blob/master/lisp/ox-html.el#L208 it's #+BEGIN_details #+END_details they for some reason added them in lower case when every other org #+BEGIN_ is in all caps. You have to enable html5-fancy I believe in options, I can't remember but ox-html.el should have the exact command to do so in it's source somewhere just I'm not near where I write the meme curriculum. The html5 video BEGIN/END works nice too I thought about using it but I prefer links so whoever is reading it can see exactly what and where it is, using their own preferred software to load youtube or w/e videos. I left out a lot of propositional logic because Tao does as well. I've never really liked courses that bombard you with logic though you still should probably learn it eventually just not at first where it's pages of Bertrand Russell-esque logic notation. Frank Pfenning and Robert Harper instead use logical judgements notation in all their papers/books and for me this is fine, I kind of want to go through Harper's book on programming language foundations again for the meme AI curriculum because it's so good, is highly relevant to AI if you're going to roll your own DSL meaning a program that writes itself and has come up repeatedly in my real life but parts of it are extremely difficult like you have to spend a week thinking about a subset of the problem and another week thinking about another subset until you just get it (if doing the book properly w/the exercises, many ppl don't do the exercises).

I use anything, like writing a script to automatically update server configuration I'll use ed (see the ancient book Unix Programming Environment). Speaking of Geohot, when he was at CMU before he dropped out he wanted to learn vim the correct way so disabled his mouse and arrow keys to force himself to use the vim way of navigating blocks of code and this clearly has paid off because when you watch him in those all day Sunday broadcasts he's just blazing through his IDE. The way I learned emacs was similar, print off the handy cheat sheet that GNU gives you (or buy it off their website if you're american, postage too much otherwise) , tape it up somewhere and after a few weeks you'll have memorized the entire sheet. I don't use emacs like most people with a 3rd party modes and customizations unless it's for a specific language, I also edit the source directly and compile it myself which is totally not what you're supposed to do but I'd just be reading some source and think 'this would be better' and change it there instead of keeping version changes in a massive config file like most people do (technically not a config file, it's a program that runs when emacs is booted).

Math curriculum if anybody is interested, my plan subject to pandemic variables is I want to finish Axler's book a chapter section per day, I want to do Strang's Calculus w/Tao's book because AI is about modelling behavior and Strang is really good at building a model in math since it's MIT. Strang has the best course I've ever seen which is about modeling real life problems in differential equations, we may do it depends on things. Look up 18.085 on stellar. I also want to go through Wildberger's crazy Linear Algebra videos because projecting into affine spaces is a must for optimization/AI, and do either Brown's Coding the Matrix (because we have to learn SVD anyway) or go right into Strang's Linear Algebra w/Deep Learning because it covers numerical linear algebra, stats, probability, literally everything you need (see MIT 18.065). It's a great book and I have most of the page scans already that I will post though possibly something will show up on libgen before we get there. We have to focus on real life things: build model of it, train program to build model themselves. This is the domain of engineering but also the domain of Robert Harper and Wildberger oddly enough. I'm primarily interested in the writing of Sussman's critiques on AI 'is this actually intelligent?' though that section has been dead for 2 months it's going to explode when we do graph theory in CS019 which is next lecture.

Software curriculum we may have to do MIT's 6.006 Erik Demaine course on algorithms because it covers the Python complexity model, and we will need this since AI practice in these courses is still in Python. Something I'd like to do is 'Real World Algorithms' from CMU which is crazy eye opening, and/or just go through TAOCP by Knuth. If Knuth seemed impenetrable, it's not now if you look at the first few math prelim chapters. Look at the logarithm chapter you probably understand everything in there now. Wait until we do calculus and Tao's set theory and you'll understand everything in the next chapter. Watch Wildberger do derivatives with 'polynumbers' and you'll get the chapter after that. Tao taught you the required focus in order to do 'detective work' as other anon said to build an apparatus on top of axioms, this skill sets you up to learn anything in the Art of Computer Programming volumes, and Wildberger has given you the insight why the table of differences leads to Pascal's array, which leads to doing derivatives and sub-derivatives in calculus (we'll see this soon) and encoding the binomial theorem. This is most of the 'mathematical preliminaries' in TAOCP. Tao fills in the rest. You learned all this and all you had to do was watch some 10 min youtube lectures and figure out a couple of definitions out of Tao's book which set you up with a base of knowledge in order to build a skyscraper. This is my goal if it works because it worked for me
Rebecca Sallerman - Wed, 22 Apr 2020 23:01:49 EST tH/F+juQ No.38646 Reply
I just want you to know you've been an inspiration to me, I honestly didn't think there were anons like you left.
Graham Clirringstock - Fri, 24 Apr 2020 15:13:49 EST JVABQL0U No.38654 Reply
How old were you when you managed to turn your life to the better? Somewhere in this thread you were posting about being some kind of blackhat in the past, so it seem you were always recoursefull, and creative? Sometimes i feel i am doing good job, but last 2 weeks was kinda tough for me, i was procrastinating a ton, sometimes its hard to get out of bed tbh
Barnaby Bledgeshaw - Sat, 25 Apr 2020 22:00:02 EST on8PnR9L No.38659 Reply
Hey OP, hope you're doing well with corona and all that stuff
regarding your math memepage, is there any particular reason that made you go with Tao instead of this one? http://www.math.iitb.ac.in/~srg/acicara/

Henry Sanningfat - Sun, 26 Apr 2020 00:16:12 EST VU7xgxGS No.38660 Reply
Wow it's actually you
Molly Gullerhit - Sun, 26 Apr 2020 18:10:47 EST x6K3CZQk No.38663 Reply
1587939047216.jpg -(162399B / 158.59KB, 1280x720) Thumbnail displayed, click image for full size.
Maybe, vol II assumes a linear algebra background and the topology crash course Tao includes will make no sense unless you watch Wildberger's topology lectures. The proofs are also jacked up to 10 in difficulty. This is what I would like to do: the software and math workshop just continue on their own for random things I'm interested in, the idea being you take those until the content in the AI workshop is possible to do and can switch or do both. Of course, one of the main reasons I do these workshops is that is how you learn. Famous meme David Goggins claimed he was nearly illiterate when he had to study for the seal course and could only understand all the technical diving memorization by writing the chapters out himself over and over (something Gilbert Strang makes you do in his Calculus book, something Cal Newport also did in a way reciting the lecture himself). Hopefully somebody in X field sees what I'm doing and does it themselves and we have dozens of these from scratch workshops to learn computational biology or physics and other fields, because then we all can learn from them. TAOCP is basically Knuth's workshop, he teaches from scratch though it doesn't look like it upon first read.

draft subject to variables like global pandemic, complete economic reset:
CS019, CS-122 (we finished the core parts of cs-122 already! this massive list won't take forever), CS3110 will start soon in parallel w/CS019, then Brown's CS1730/PLAI if Prof K has the new material up (see https://www.plai.org/) and Robert Harper's PFPL book with the recorded lectures from OPLSS. Then a class on complexity theory because very relevant to AI in fact most of the original AI researchers were complexity theorists from what I've read.

When everything is done* then The Art of Computer Programming because it's actually now more relevant than ever. For example the silly tape drive merging section in Vol 3, remove the tape drives and add a massive blob on Amazon s3 being retrieved as a stream, or Azure or any other cloud storage. It's external data storage streamed like a tape drive. Everything is remote now: remote GPU clusters, remote fast floating point scientific computing infrastructure, etc. TAOCP is the only book around that can manage to put them all together.
*Harper's PFPL book the exercises are Tao/Knuth tier and take like a week to figure out, this won't finish quickly
Tao's Analysis vol I will probably take a few months because you have to sit around and think about a single exercise. At the same time I will finish Axler's book, Strang's Calculus (learning to build a model using math, highly relevant to AI), Wildberger's LinAlg w/Brown's Linear Algebra course for practice, Gilbert Strang's new deep learning book covers all the probability and stats we'll need but I may do MIT's probability course too. I'd like to do Analysis II because it sets you up for all the impossible to learn stats and probability that advanced machine learning requires. I'd also like to do Robert Harper's totally Wildberger-tier cubical higher type theory as a foundation of all mathematics because then we know category theory which means doing HoTT book and lectures, then CHiTT. The rest of math is filled in by TAOCP with martingales, satisfiability etc.
Sussman's AI graduate course reading advanced papers w/CS188 from Berkeley
Everything ZKolter teaches, because he's absolutely crushing Kaggle competitions lately
Whatever the most open Machine Learning, NLP, Deep Learning exist I'm highly interested in NLP lately
Computational bio/genome AI if MIT still has a good course for it

I may do a lot of the AI courses in OCaml too https://blog.janestreet.com/using-python-and-ocaml-in-the-same-jupyter-notebook/ because we can mix ocaml and python in the same notebook, it's what quants at JS do, so we can as well. Reasons for doing it in OCaml is it's easier, Python is actually pretty hard to get correct and debug if you don't have a decade of experience which I don't. We'll see what happens. I want to finish everything except the things like TAOCP and PFPL/HoTT by end of this year, which means I have to pick up the pace and scheduled to do so now, so no time for anything else.

Just a few things I am secretly setting the reader up for:
>jane street if you want it (and take an OS course, or at least 15-213)
>making real AI, see Sussman lectures
>'ai engineer'
>NLP research somewhere
>biotech startup or university lab research
>web development, because 019/3110 secretly teaches this too
Sidney Clupperwill - Sun, 26 Apr 2020 22:06:23 EST x6K3CZQk No.38665 Reply
Thanks, I'm hoping other anons see this and write their own so I can learn from them.

We'll do a little of this eventually, I think CS188 even.

Around age 32 or so I posted this thread I think, it took me a long time to learn focus and drive. Before that I just drifted around. The blackhat things I did were naive and foolish, cost me respect from my family and friends. Bruce Schneier writes a great article about criminals: they never learn probability so don’t learn the true consequences of their actions, which is why they end up in jail.

Too advanced, it’s a second course in calculus though after Analysis I that book I think is possible. It's really a good book, conceptually more easy to understand, esp how they don't even bother with trig functions until later chapters and then you go back and see how it can solve a lot of early exercises. Actually I’ll look at it again, though I like Strang how he teaches modelling using math. Take natural phenomena, stick it in math, look you can you predict the phenoma is essentially all of Strang’s text.
Wesley Senkintare - Mon, 27 Apr 2020 07:13:35 EST tZqF4ai3 No.38669 Reply

Any plans on backup stuff? Maybe back as much as you can to torrent or so?
When I'm doing CS019 I'm afraid it can be deleted halfway through. This fear make me anxious while studying. The only thing that makes me a bit calm that I can easily backup PAPL and video lectures have almost same content .
Fuck Durrypatch - Tue, 28 Apr 2020 20:46:46 EST x6K3CZQk No.38682 Reply
I have everything, you can also download all the CS019 lectures with any browser 'downloader' plugin, I used one for Chrome IIRC to archive all the cs019 lectures. if it is deleted then I will upload them to academic torrents or somewhere else. I found out why schools can't post these lectures anymore, it's because of a 1974 law called FERPA that governs the privacy of student enrollment, and there was some kind of recent lawsuit where somebody somewhere sued because their image was in a lecture posted. tl;dr always archive yourself, if you can, use a browser plugin for this or inspect elements in your browser, get the source video or look at the network and collect transport frames which is a pain but I've done that before too.

The lecture content is CS019 is often different than PAPL, for example there's no quicksort or insertion sort in PAPL, and he walks through a lot of these concepts much better than the book I find. For example the very last lecture is on security in npm packages and common unix programs.

Something interesting, look up on OCW MIT's 6.006 lectures w/Erik Demaine. Notice everything he writes on the board is the exact same syntax as Pyret. That's mainly why I chose CS019 as the intro class since we'll have to do a lot of AI classes and every single one is using Python. My fetish for people needing to do this solely on a phone is still an invariant, there are a lot of online interpreters like google colab which we'll likely use in most future courses and it's free so won't be a problem if somebody in middle of nowhere only has a tablet or phone, which is like 70% of earth. This is another reason why I like TAOCP so much is you can just do it on pen and paper, though it's fun to play around with the insane pipeline simulator thing for MMIX where you can adjust the fake architecture to increase pipelines or whatever branch prediction strategies on the fly to test your algorithms, you can still hand interpret the old MIXAL if you have to.
George Dreshforth - Tue, 28 Apr 2020 21:06:47 EST on8PnR9L No.38683 Reply
To archive PAPL's lectures I used "fbdown.net"' 's chrome extension. It's the only one that worked for me believe it or not.
George Dreshforth - Tue, 28 Apr 2020 21:12:18 EST on8PnR9L No.38684 Reply
Forgot to said that I wouldn't mind uploading but given my current situation read: 3rd world, It would take me like a month to upload everything. So I hope someone with fiber or something could take after this not-so-titanic task.
Reuben Samblefuck - Wed, 29 Apr 2020 07:48:03 EST JVABQL0U No.38686 Reply
Are you into algotrading? I try to write algotrading bot for my bachelor thesis, i tried various things: time series forecasting like ARIMA, i tried to build deep neural networrks too and simple heuristics: meanreversion-trendfollowing strategy. I am NEET so i only have access to public APIs. Any experience with that?
Wesley Faffingded - Thu, 30 Apr 2020 05:19:11 EST FtDK6p11 No.38690 Reply
I'm also really curious about this. I guess the easiest way would be to work for one of those trading firms like Jane Street, Citadel, Two Sigma, etc for a couple of years, then quit and do your own thing. But not many of us can get a job at one of those places... Of course you'd never come close to their returns as an independent trader, but honestly I'd be happy with just beating SPY by a few %
Charles Bummerditch - Thu, 30 Apr 2020 20:03:34 EST x6K3CZQk No.38696 Reply
If they disappear I'll get a seedbox and just torrent them, I haven't done so yet because likely some kind of license prevents this and they will freak out and then hide everything behind school credentials which would really suck but there is a plan B.

I also just updated the math meme list w/the Brown trig bootcamp, which teaches everything you need to know about trig for taking undergrad calculus in one 40min lecture, with solutions walked through in another 40min video. Archiving that video is important, it's probably the single best trigonometry resource I've seen.

There's resources floating around https://www.datacamp.com/courses/model-a-quantitative-trading-strategy-in-r/ or https://www.datacamp.com/courses/financial-trading-in-r apparently MIT's new 15.450 classes Analytics of Finance uses datacamp too. This is all turnkey in R with that quantstrat library. MIT's free Math for Finance or 15.450 class covers this in depth though they assume multivariable optimization backgrounds (Ito calculus) though you can find crash courses to make up the prereqs for this https://youtu.be/EycEXezPLKo personally I only have a passing interest in it, I worked mainly in optimizing 100+ firehoses of proprietary data while shoving it into a backtesting simulator before they promoted me into management and all I did was read emails all day and do meetings before leaving.

If this is really what you're interested in you can do it professionally without any connections, before the pandemic there was yearly fintech competitions held every month sponsored by the likes of DE Shaw and whatever open to anybody or just fleece some meme coin market exposing their phony trading volume claims and post this on medium on a regular basis, some fintech recruiter will notice this.
Charles Bummerditch - Thu, 30 Apr 2020 20:29:30 EST x6K3CZQk No.38697 Reply
Everybody I know who quit ended up licensing their own proprietary data stream, imagine there is about 20k trading firms out there and you're selling your data to them monthly. For example Uber and Lyft drivers at many airports, whenever a plane comes in they simultaneously turn off their apps for a minute or two to trick the app into thinking there are no drivers available---creating a price surge. Tiny things like that are data to be capitalized by some trader somewhere and so if you know these things you can build them into stats and sell it. Some HFT outfits will buy and hold stock themselves too for every order, for example somebody wants 90k worth of apple stocks they will buy 100k and keep 10k for themselves, holding it because they are playing both sides making money off the trades and the fact that the customer might have some proprietary data they don't have and it's cheaper to buy and hold stock than buy their data feed. Another quant somewhere will see this pattern and then there's another point of data to sell. It's such a crazy world of who can sherlock holms the most obscure data and turn it into any kind of profit.
Charles Sankinridge - Fri, 01 May 2020 09:45:08 EST ZoxfP2Mf No.38699 Reply
You would think they'd make their own arbitrage and market making software and just keep refining it for easier money than collecting data and finding clients to sell it to. Anyway, how hard do you reckon it'd be to get a job in one of those HK trading shops without a degree? You mentioned above that it's really easy to get a visa in HK but does that still apply if you haven't got a degree? I have about 3 years experience in an unrelated (web dev) field.
Charles Sankinridge - Fri, 01 May 2020 09:45:08 EST ZoxfP2Mf No.38700 Reply
You would think they'd make their own arbitrage and market making software and just keep refining it for easier money than collecting data and finding clients to sell it to. Anyway, how hard do you reckon it'd be to get a job in one of those HK trading shops without a degree? You mentioned above that it's really easy to get a visa in HK but does that still apply if you haven't got a degree? I have about 3 years experience in an unrelated (web dev) field.
Charles Bummerditch - Fri, 01 May 2020 17:51:49 EST x6K3CZQk No.38701 Reply
Everything has almost certainly changed because of the pandemic, it may be easier or much harder because lot's of people globally and in the mainland are locked down or out of work right now. The best way is just find a recruiter there they bend all the rules to get you in. financialcareers.hk and many other fintech recruiters have sites. Here's a meme-coin example: https://www.efinancialcareers.hk/jobs-Hong_Kong-Hong_Kong-Software_Engineer_-_Fintech_Blockchain_Firm_-_Learn_Golang.id07758067 though golang is filled with hidden land mines, I would dread using it for manythings. That same site has legit non meme-coin fintech startups there is countless amounts of fintech startups and global HFT/quants/banks in HK (or at least was pre-pandemic). Depending on your algorithm background you could also try applying to Jane Street in HK, for all we know nobody is willing to work there right now and they're desperate.

The new meme workshop is being updated with a list of courses, we jumped into trigonometry w/brown's bootcamp, and now doing calculus, probability, and linear algebra all at the same time since the absolute basics are over. Good luck anons, see you when we finish CS6780
Phineas Croddlechot - Sat, 02 May 2020 03:06:04 EST 9SGICGrz No.38704 Reply
Do you think finishing CLRS or TAOCP is enough to get in Jane Street? Which is more preferable to read between the two?
Alice Chammerhall - Mon, 04 May 2020 08:54:14 EST M5+y6v9Q No.38711 Reply
>draft subject to variables like global pandemic, complete economic reset:

Excuse me, bit what did you mean by this?