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

I agree. I was taught Scheme and I later taught it. It was a much cleaner and suitable language for teaching computer science than Python. Students could completely understand the language and how it worked by the end of a semester.

Scheme is much closer to mathematics, which made it much more suitable for teaching strong mathematicians arriving without coding experience. It also made the hackers more rigorous and broadened their minds from the imperative "do this then that" mindset.

There's a notable difference between those first taught scheme and those first taught Python. Of course, both can go on to learning Python or FP or whatever. But that foundation needs to be there to teach truly great coding for most mortals.


I only use print debugging when working on the web, and your mention of console.log makes me think maybe you're in the same boat.

It's an absolutely damning indictment of the developer experience for the web that this is the case. Why aren't our IDEs and browsers beautifully integrated like every other development environment I use integrates the runtime and the IDE?

Why hasn't some startup, somewhere, fixed this and the rest of the web dev hellscape? I don't know.


Don't browsers have some of the best dev tools out there? For example, you can use the `debugger`[0] statement in your JS code to trigger the in-browser debugger when that statement is hit (its basically setting a breakpoint).

0: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...


Browser debugging tools are very basic. Their UI is generally awful.

Spend a few days debugging in PyCharm and you'll scream when you open developer tools.


That's table stakes for a programming language these days I think.

JS: debugger;

C#: System.Diagnostics.Debugger.Break();

Rust: std::intrinsics::breakpoint();

Go: runtime.Breakpoint();

Zig: @breakpoint();


Agreed, but I wonder what the OP is missing in their webdev debugging journey that exists elsewhere


I have always used print debugging, since way before web dev existed. I resort to an actual debugger only occasionally.

Some IDEs do have integrated JS runtimes, so you can use a debugger in the IDE. However since JS runs on browsers and devices out of your control that only works up to a point.


I taught both SICP and Java, and I can confirm Java was far more confusing to students. Classes vs instances, inheritance, polymorphism. Why was everything a class? Don't I just want the computer to do something to some input?


And the public static void main and then endless conversations about packages, and public/private fields, that will backfire very pragmatically (at the time) unit test frameworks didn't have a way to call private methods ... Ironically by the time you're done with the basics, nobody has stamina anymore to learn anonymous inner classes.

The thing is, somehow syntax and some forms of abstractions cast a magic spell on most of the population (at time myself included) .. it's your mental interface to the semantics, so you want more syntax to be able to have more abilities, but syntax composes badly.

At least to me that's why I enjoyed lisps / lambda calc, it reduces the domain into a more homogeneous space, suddenly more things are possible with less. Although it seems that the mainstream rather enjoys doing simple thing with verbose tools (it does looks like you're doing a lot of work with a lot of advanced terminology) than solving hard problems with APL oneliners (hyperbole).

Different psychologies ?


I don’t think OO should be taught to students who aren’t already familiar with structs and passing functions around.

If those two things are already well-understood, the nature of OO as a some syntactical sugar and a couple lookup tables is readily apparent.

Without that background, the terminology seems weird and arbitrary and the behavior magical.


Yes, I agree these are two good points. I also experienced teaching SICP and would say the overall position of the GP is incorrect and results in a less profound understanding of programming.


> Bullshit. Again, I was a TA for this course. You do not spend the rest of the semester on ideas, you spend the rest of the semester on the students being very confused.

I was a TA on an SICP course at a UK university, disagree with you. The students weren't confused, the simple syntax really helped and, because all the students had good maths knowledge, a functional style was a lot more intuitive than imperative.

FYI, the course has since been replaced with Python programming.


Hi Hacker News I’m Captain Obvious and I’m here to tell you (and myself) an uncomfortable truth that most of us kinda know but really can’t face up to.

Many of us have sleep problems.

We don’t have the healthiest lifestyles. Lots of screen use, being very sedentary, many of us eating bad food (it’s quick! I can get back to thjngs). Denis Nedry is not a mischaracterisation.

It’s not true for absolutely everyone but for the vast majority of people the answer is super simple. You need to exercise. Not even a ton. Three times a week will probably do it. Some cardio some weights, each visit to the gym a decent workout.

This will cost you £40-£90 a month. That’s about the cost of various Adobe Creative Cloud packages, which enable you to make mediocre graphics on your home personal computer.

for the same price as those photo tweaks you can get: improved longevity, improved all round health, protection against RSI and back problems, hugely reduced stress levels, improved levels of focus and happiness and better relationships. Hey, keep it up for a bit and you’ll even get a bit buff and your partner might like that.

We all know this and yet we all seek alternative explanations and remedies: eye masks, Vit D, meditation, dietary fads… because they’re so much easier than 2 hour trips to the gym a few times a week. Sure for some people those things are real but for the rest of us it’s just procrastination because:

The gym isn’t very fun.

Get over it. Put a podcast on, start small, accept that Tuesday night and Thursday night are going to be mostly lost to the gym and just enjoy the journey there and enjoy the music or podcast accompaniment. It’s a tax on living. Pay now or pay much more later, your choice.

I struggle with this so hard, but I’m trying ringo, I’m trying, and you should too.


My theory is this is cause by stress hormones.

You can get to sleep because you’re so damn exhausted, but you wake up as soon as you’re physically able because of the hormones.

The answer is exercise. Aerobic and weights. Three times a week minimum. And for a good amount of time.


I do powerlifting 3x week. No real aerobics, I should add that but I just hate it. Sometimes I’ll drop the weight and do high rep sets which does get my heart pumping.


My completely unscientific analysis: aerobics gets the blood circulating more and enables the body to remove stress hormones from the blood at a faster rate.


A lot of people wake up at 3 or 4am. This is typically stress related.

Possible solution:

1. Sit up or get up. If getting up, I usually get a mint tea.

2. Journal. Write down your thoughts. Very important: write down _what you are going to do tomorrow_, step by step. Usually the brain is worrying about something and by telling it what you’re going to do about it tomorrow it seems to calm down.

3. When you’ve gotten everything out, read. Just keep reading until you can’t keep your eyes open.

I’ve found this almost always works. Waking in the middle of the night is caused by stress around a problem. Your brain just wants to know the narrative around how that problem will get resolved or improved. Then it will fall sleep again.


> Waking in the middle of the night is caused by stress around a problem

I don't think this is universal. For example: rotating shift workers can have a mostly physiological insomia, due to various disrupted rhythms.


Problems with f/oss for business applications:

1. Great UX folks almost never work for free. So the UX of nearly all OSS is awful.

2. Great software comes from a close connection to users. When your software is an OS kernel that works just fine for programmers, but how many OSS folks want to spend their free time on zoom talking to hundreds of businesses and understanding their needs, so they can give them free software?

See also: year of Linux desktop


The good news for FOSS is that the UX of most commercial software is also awful and generally getting worse. The bad news is that FOSS software is copying a lot of the same UX trends.


What happened when someone from the cool club got promoted and became a boss?


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

Search: