Hacker Newsnew | past | comments | ask | show | jobs | submit | asimeqi's commentslogin

AI is making coding so cheap, you can now program a few versions of the API and choose what works better.


Not a member of the project but here is my take:

You run the WireGuard app on your computer/phone, tap Connect, and it creates an encrypted tunnel to a small network box (the “FPGA gateway”) at your office or in the cloud. From then on, your apps behave as if you’re on the company network, even if you’re at home or traveling.

Why the FPGA box: Because software implementations are too slow and existing hardware implementations cost too much.

Internal or Internet: Both.


When I was in elementary school in the 70s in Albania, we had some older teachers who wrote z as ᵹ. I don't know where that came from, but it was not part of the official alphabet.


The 100x also is kind of meaningless. 100x compared to what? I can introduce a bug by being careless for 1 minute, discover it in my own tests and spend the next 2 days to figure it out. That's already 960x compared to the time it took me to introduce it.


Compared to before production


Even before production there are multi developing stages. An authenticate bug in PoC stage, few hours of engineers. In production, could make your company go bankrupt


~relying~ --> relaying


Also this Albanian guy just published a video from the same place: https://www.youtube.com/watch?v=TUGbSg3o7p4


15 years after MIT made the same switch from Scheme to Python. Since CS at MIT seems to be fine, so will CS at NEU.


"Everything will be OK" - people will succeed in any system. Nobody will ever compare the outputs of the two systems, so nobody will ever know.

Let me instead suggest that one question we should ask is: What kind of students will be successful in the new system? What kinds of students will not?

One interesting thing aspect of the former curriculum is that (IMO) it provides an entry for students who are not entering with a lot of pre-existing knowledge. One of the criticisms of "old school" computer science teaching is that it privileges students who already have exposure to the material... The former curriculum is not the only way to level the playing field, but it certainly does provide a more level playing field for students who might not even be sure about the major.

I will stop with the suggestion that (IMO) pre-existing experience is definitely not the best indicator of future developer quality, so I value a curriculum that does not select for this.

(Caveats: never saw the new curriculum, it could be just fine, there are lots of other ways to accomplish this goal, but still... I am concerned.)


I don't know how much I buy the "leveling the playing field" argument. In my computer architecture class, we learned Sparc assembly. Very few people had encountered much assembly, and definitely not Sparc. At first, it was level, but people with more programming experience quickly adapted since it wasn't actually that different.


I believe this is a fundamental misjudgement of the CS curriculums at MIT and NEU and, apologies for being blunt, probably the worst take on this thread.

The student populations at MIT and NEU, particularly in CS, are fundamentally different. The majority of undergraduates at CS MIT participate in academic research while the vast majority of CS undergraduates at NEU do not (do not let NEU's exceptionally high computer science research output [1] confuse you - the undergraduate and graduate schools are very separate). MIT educates significantly less students than NEU. MIT's algorithms class (6.046) is significantly more rigorous than NEU's equivalent (CS3000) - just compare the publicly available curriculum and problem sets [2,3]. In general, MIT's CS curriculum caters towards the third of the student body that go on to do PhDs, while NEU's CS curriculum caters towards the vast majority of students that beeline towards industry [4,5]. The institutional goals and educational values between MIT and NEU could not be more different. I know all of this to be true because I've spent a significant amount of time at both institutions.

I don't know if NEU will butcher its CS curriculum. I hope not. I guess we'll just have to see.

P.S. it's worth checking out Pyret [4], essentially a functional teaching programming language. The language is mostly written by NEU staff, so I wager NEU's future CS curriculum plans to phase out Racket in favor of Pyret.

[1] https://csrankings.org/#/fromyear/2014/toyear/2024/index?all... [2] https://courses.csail.mit.edu/6.046/ [3] https://tlarock.github.io/teaching/cs3000/syllabus.html [4] https://facts.mit.edu/alumni/ [5] https://www.northeastern.edu/experiential-learning/co-op/ [6] https://pyret.org


MIT, despite it thinking otherwise, is a slave to industry, funding, and trends.


This adds nothing other than “MIT did it so it’s OK.”


History says otherwise.

Before the current curriculum was implemented, a good portion of students were having difficulty finding jobs and co-ops. After the switch, employers were very eager to hire these students.

The change is not a mere "switch to Python" (which itself is not nothing). It is the replacement of a good curriculum with something mediocre.

Also, I don't know how MIT is doing after the switch.


Is it fine? How would we determine that? What's the metric?


Why do I remember The C Programming Language book by K&R explaining how to write a version of cdecl? I just checked the second edition of the book and my memory seems to be wrong.


It's not listed as cdecl and (therefore?) not findable in the index, but in chapter 5 - Pointers and Arrays - the book presents the programs dcl and undcl that translate between C declarations and English renderings of them.

I believe dcl mimics the cdecl program.


I once implemented a logical expression evaluator to be used as filters on a search page. My boss tested it and filed a bug because he expected OR to have higher precedence than AND. I pointed him to a page with the rules and told him that he could use parenthesis if he wanted to modify the order of precedence. He was sort of convinced but never closed the ticket. Every release he would move it to the next release.


There was also Adpative Programming by Karl Lieberherr at Northeastern University (https://www2.ccs.neu.edu/research/demeter/). He had both a C++ and a Java compiler to implement what he called traversals, features that would span many classes but you could implement in one traversal file. His tools were so powerful that in one of his classes I was able to add synchronization primitives to Java as a class project.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: