Hacker News new | past | comments | ask | show | jobs | submit | CleverLikeAnOx's comments login

This is impressive and mirrors a lot of thoughts I have had about the future of backend frameworks. I love the focus on local development for things like pub/sub.


FYI, the redirect to /login breaks the back button on Firefox for Android and probably other browsers. Had to hold back and go to a history entry to escape.


An old timer I worked with during my first internship called these kinds of issues "the law of coincidental failures" and I took it to heart.

I try a lot of obvious things when debugging to ascertain the truth. Like, does undoing my entire change fix the bug?


When something absolutely doesn’t make sense to me I often go back to a point in time and do a checkout of when I was 100% sure “it worked” and if it doesn’t then I assume something external changed, hardware, backend service, the earth’s wobble. If it does work then I will bisect the timeline until I Iocate it. This works for me 99% of the time on tough bugs that just defy any logic. It’s kind of known quantity as opposed to going through endless logs, blames, file diffs, etc. I know in some cases it isn’t really possible but in code that you can have a fairly quick turn around on build/install/test, it works really well.


Yeah, good times. I just recently had one that was a really strong misdirection, ended up being 2 simultaneous other, non related things that conspired to make it look convincingly like my code was not doing what it was supposed to. I even wrote tests to see if I had found a corner-case compiler bug or some broken library code. I was half way through opening an issue on the library when the real culprit became apparent. It was actually a subtle bug in the testing setup combined with me errantly defining a hardware interface on an ancient protocol as an HREG instead of an IREG, which just so happened to work fine until it created a callback loop inside the library through some kind of stack smashing or wayward pointer. I was really starting to doubt my sanity on this one.


> corner-case compiler bug

They say never to blame the compiler, and indeed it's pretty much never the compiler. But DNS on the other hand... :-)


Unless you wrote the compiler


Yeah, it’s basically never the compiler. That’s how you know you are truly desperate… when you think you’ve eliminated everything else lol.


The joys of modbus PLCs, I take it?


Ah, yes. But a roll- your own device with C++ on bare metal, so lots more fun.

(we’ll need a few thousand of these, and the off the shelf solution is around 1k vs $1.50 for RYO )

By the way, the RISC V espressif esp32-C3 is a really amazing device for < $1. It’s actually cheaper to go modbus-tcp over WiFi then to actually put RS485 on the board like with a MAX485 and the associated components. Also does ZIGBEE and BT, and the espressif libraries for the radio stack are pretty good.

Color me favorably impressed with this platform.


I wonder if there is a law of coincidental succeeses too. (if you're an old timer, you might call this some sort of Mr. Magoo law, or maybe "it seems to work for me")


This is the root of 'pigeon religions'. Someone sees a string of events and infers a causal link between them and an outcome. Confirmation bias kicks in and they notice when this string of events occurs again, which is made more likely by the fact that the events in the string are largely the person's own actions which they believe the events will produce the desired outcome. They tell their friends and soon a whole group of people believe that doing those things is necessary to produce that outcome.

That's how you get things like equipment operators insisting that you have to adjust the seat before the boot will open.


I use it for programming and math. When I started using kagi almost 2 years ago, I had to go back to Google occasionally. Now I basically never go back to Google search.


I took a class psychology class on learning that was superb.

It taught how to memorize stuff: spaced repetition and semantic encoding. Spaced repetition is reviewing the thing at increasingly spaced intervals of time. Semantic encoding is coming up with connections to the idea. The wilder the better as that tends to be memorable.

The class taught some strategies for creativity such as use of analogies and trying to combine disparate ideas.

The class also taught cognitive biased, like loss aversion.

This class was life changing. It was also easy because the teacher applied the best practices she was teaching.

I would say something like that class is the basis for teaching people how to think.


wow, this inspires me to find something like that on coursera


Can't you choose to only use apps on Apple's app store?


I believe the implication is there will now be less incentive for app developers to ship for App Store when they can get 80% of the way there with 0% of the “hoops” to jump through (I.e. Apple guidelines)


You can improve without measurement by using reasoning and experience. As an example, Groupon drove itself into the ground by only improving itself in ways it could measure. They added many nagging features that a/b tests showed worked. However, the CEO ignored his less measurable feeling that this was cheapening the brand.


There are multiple people here and their opinions vary.


There are multiple people here and their opinions generally skew towards contrarian one-upsmanship


Why:

Avoid time wasting nit-picks on PRs.

Consistent formatting may be easier to quickly read.

Why not:

Avoid taking a dependency.

Avoid "fix formatting" commits (or the complexity of having a system auto-apply formatting).

Formatters don't always make the most readable code. Sometimes non-standard formatting actually communicates more clearly.


There is a huge difference between having a post removed in a moderated community and having a post be punishable by the law of your nation.


Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: