Hacker Newsnew | past | comments | ask | show | jobs | submit | iamevn's favoriteslogin

I always find it strange how people complain about features when the real problem is that they simply don't like how people use the feature.

Async in C# is awesome, and there's nothing stopping you from writing sync code where appropriate or using threads if you want proper multi threading. Async is primarily used to avoid blocking for non-cpu-bound work, like waiting for API/db/filesystem etc. If you use it everywhere then it's used everywhere, if you don't then it isn't. For a lot of apps it makes sense to use it a lot, like in web apis that do lots of db calls and such. This incurs some overhead but it has the benefit of avoiding blocked threads so that no threads sit idle waiting for I/O.

You can imagine in a web API receiving a large number of requests per second there's a lot of this waiting going on and if threads were idle waiting for responses you wouldn't be able to handle nearly as much throughout.


Side note, Niri is a fantastic WM. When I saw the Phoronix article on HN talking about the addition of overview mode and more, I finally took the plunge and spent an afternoon converting over from Sway.¹ Anecdotally, I've seen less hangups on Niri around fullscreen games and floating windows, perhaps thanks to X11 running in xwayland-satellite.

1: the hardest part was finding a bar that supported i3status-rs; not a fan of GTK bars that eat up CPU. I settled on i3bar-river.


There's the principle "never let them see you sweat" and if you're trying to convince people of an idea like TDD you never want to be seen floundering. You don't publish anything about your sudoku solver until you've succeeded at it. Otherwise you're just proving "TDD sux" which, for all "X sux", TDD sux more than X.

All programming languages either die, or become bloated, as any software product.

I bet a Fortran 77 developer will think the same of Fortran 2023, a COBOL 60 developer of COBOL 2023, a K&R C developer from C23, a 1975 Scheme developer from R7RS, a Python 1.0 developer from Python 3.13,... even Go 1.0 developers from 1.24 with generics, generators,...


My girlfriend owns one so to share our experience, the cybertruck is an unreliable POS. She's had it three, four months now & we have had it in the shop for suspension repair, an ECU computer which fried itself at a charging station (2k), a coolant leak part replacement from the cyberbeast rear engine (1400), the passenger window falling inside the door after the wire used in the gear window retraction snapped or tangled in the gears (450). We have gone through something like 8-10 tires and rims because they can't handle a pothole, or slice themselves after some tech put the wheel cover on wrong (tried leaving it off but a tire caught debris and was punctured that way too).

She had about two or three tires slashed or had the air nozzle cut off and sentry mode didn't catch anything except the back of the persons head. The self-driving jerked itself into a barricade on the interstate when someone cut her off, she wasn't able to stop it from doing so fast enough, it was all just faster then her reaction time (thankfully the other driver admitted fault but if they had contested I wouldn't put my faith in self-driving laws to side on a drivers side in a dispute). We have put roughly 10k into this truck for service.

We bought the truck because she lives in the mountains, she drives 200 miles a day for work if not more 5 days a week (regularly up at 4am on the road at 6am and home around 7pm - 9pm depending), and its probably the biggest purchase regret of our lives.

She needed a vehicle and I just spent 15k on a used RAV, we made the decision for her to get the truck because self-driving sounded very exciting (its all 'corporate puffery' now though), and her being in the mountains left us looking at roughly 80k vehicles anyway so we figured let's take a chance on the truck and self-driving. I mean most cars you get a good five years out them anyway right? Turns out that paint it black tesla ad was even faked, and my personal opinion is Tesla used the reservations to get this news piece.

I truly don't see the cybertruck as being desirable for the average American, I believe it's a novelty which will die once Teslas early adopter advantage for self-driving dies up. I believe it should. We are currently looking to buy her a 8k commuter beater for local 60 - 120 mile work days and using the cybertruck just for the work out of state. We'd sell the truck but its depreciated so much and she still travels out of state once or twice a month minimum and all over the place once there so we still want something electric for those trips. We would sell it if I had about another 50k in the bank to be comfortable with taking the quick loss from doing so, we still might once the relatives house sells. Don't buy Tesla, that's my advice. We never will again.


I want more people to have link blogs.

I have one in the sidebar of https://simonwillison.net/ which I've been running since November 2003. You can search through all 6,836 links here: https://simonwillison.net/search/?type=blogmark

I can post things to it with a bookmarklet. It has an Atom feed.

It's such a low-friction way of publishing. A lot of https://daringfireball.net works like this too. I also like https://waxy.org/ and https://kottke.org/ for this.

I'd love to see more of these.


Ah, thanks. I didn't know this proposal. I am trying to push similar things.

The main obstacle are people coming from MSVC or C++ not knowing variably modified types and people being convinced that VLAs are always bad. This then leads to many bad attempts at fixing the problem instead of simply using arrays which know their run-time length. While we still miss a bit of compiler support (I am working on it), this already helps today: https://godbolt.org/z/4a45xq5hr

(Update: Of course, the use of references in the proposal above and the motivation is a bit obscure. In any case, VM-types will not be optional in C23 anymore. And usage and interesting is going up.)


As I said in the other thread, any license that bans "1:1 clones" would, by the very definition Prusa endorsed[1], not be open source.

I'm sympathetic to wanting a more "copyleft" or "AGPL like" open hardware licence, even the CERN-OHL-S could be improved, but none of those points advocate that.

[1]https://freedomdefined.org/OSHW


Looks very similar to the kinds of oven stoves and heat walls in https://www.lowtechmagazine.com/2008/12/tile-stoves.html, which I found quite inspiring.

I was a huge Saleae fan but with the last few projects I've been converted into a Digilent Analog Discovery 2 fan.

You get analog oscilloscope features, good enough for almost everything you will need on a typical project aside from RF or DRAM. Really good logic analyzer capabilities including protocol decoding and injection of signals - with analog waveform generation, digital protocols, and a small 5V voltage supply. Saleae still can't send a byte over UART.

And it's scriptable! Python, C++, and LabView. Again, something Logic can't do.

I'm not saying someone just getting started needs one, but if you've been in the business for a while and/or are working remote and need something on your bench, this can do almost everything in one go. The Pro model looks even more serious but I've never needed anything that powerful.


We have this technology today. It's called trains.

If anyone wants to quickly spin up a Haiku VM I leave here my Docker image [1].

It's just a proof of concept but some people are using it for CI as well [2].

[1] https://github.com/hectorm/docker-qemu-haiku

[2] https://github.com/HaikuArchives/ArtPaint/blob/7f5c49278545e...


Not the person you asked, but I came to leave a similar comment. I was curious about Monica, but for a variety of reasons it didn’t click for me.

I use obsidian for tracking meetings, people, and documents in a civic engagement sphere. So hundreds of entities and a few meetings a week.

I have folders for interpersonal meetings (calls, coffee dates, one on ones), public/group meetings, people, and a few other things. Every individual gets a top-level entry in the people folder. Every meeting or personal meeting gets a page in folder; folders are organized by year, then month. E.g meetings\2022\november\public forum with x on November 15, 2022.md

I use templates for each document type; that helps me keep things consistent so I’m tracking the same information for meetings. For meetings I run, I have special templates that help keep me organized.

When I take a note about a person saying something or attending a meeting, I type [[, then I get a list of people to choose from that autocompletes. I use the alias feature on people notes to track things like job titles, name variations, and acronyms.

The approach is more flexible than Monica, and it lets me grow and change the data I collect over time. The tool is a super power. Obsidian tracks all the back links so if I want to find out which meetings a colleague was in, it is very easy to do that.

I used to use OneNote but Obsidian is much more scalable. I’m putting 10x as much info in it as I ever did in OneNote and I expect to put 10-100x more before I move on to something else.

Bonus notes:

Obsidian plugin system is great and has a pretty robust, if not super well documented API. I’m working on plugins to automatically improve records and already have plugins that have saved hours on some special-purpose tags

You can embed pdf documents like images and have a preview show up as an embed. Amazing for meeting agendas.

If you have standard fields for notes, you can surface those in a table using dataview.

Todoist integration is pretty cool if you want to make a “Dashboard” note for project management.

The iOS version keeps the synced files on the file system. That means if you refer to a PDF, you can mark it up with a dedicated app (e.g. PDF expert) in place and keep it synced in your vault.

You can create links before creating a matching note. This is great for fast moving meetings, and then you just need to click into the link to create a matching document.


Although, I do not have much to add; using `difftastic`[0] & `delta` [1] is a very cool combo to make _git_ a little more approachable for newbies like me.

I use delta as my daily driver but sometimes when I want the contextual info, switching to `env GIT_EXTERNAL_DIFF=difft git log -p --ext-diff` gives a better picture.

[0]: https://github.com/Wilfred/difftastic

[1]: https://github.com/dandavison/delta


I've written about this before, but for tmux users, I have interactive querying the form of ten-line shell script [1]. See it live [2]. It can easily be modfied to interactively query yaml, html with xpath or css, or text with awk or what have, and I have variants for each of these. This has the advantage over the parent comment thatyou have your text editor's key bindings instead of those of fzf.

Dependencies: tmux, nodemon, less, jq, vim

[1]: https://gist.github.com/psacawa/e63c4e25a8b0405309d3a03b6b50...

[2]: https://streamable.com/jwdrqu


As a hobbyist game dev of ~1 year what I really want is a "multiplayer: the hard way" guide so I can learn how to do multiplayer on my own. My mental model of how multiplayer games actually work is basically full of holes and question marks. I haven't found that something yet.

I've been focusing on single player experiences because I haven't found that comprehensive guide that explains the nuts and bolts of multiplayer for video games. If I knew more then I could pull in more of my software engineering knowledge.

I fear that there is more incentive to create projects like this to hide that knowledge away from game developers than to thoroughly explain how to build one's own multiplayer solution.

I post this here in case someone knows of such a comprehensive guide for multiplayer.


Hey, it’s you! I watched all 2.5 hours of your vid last night and it was fantastic for too many reasons. Let’s just say I’m going through some things, and I am underinformed about some other things. So thank you and thanks stuntkite.

Trigger Warning: Gonna talk about sexual assault and physical abuse below.

"caregiver" is a big red flag for me. I'm on the autistic spectrum. My parents took a different tact and let me become an emancipated minor at 15. I'm not gonna say they did their best or that that was a good thing to do... I cannot as an adult fathom just letting the kid go to the wolves... but I survived.

There is a massive contingent of people that HATE autistic people and feel like it's something to be "fixed". A lot of them frame that hate as helping.

There are tons of laws and very questionable care giving organizations. The history is brutal. Frequently they are handed over to people who get into the role of caring for these people because they want to beat and rape people who can't complain (see Jimmy Savile). This isn't that dissimilar from the highly publicize Britany Spears conservatorship. There is money in taking care of an adult with "the mind of a 12 year old" also you can beat and rape them if you wanna.

There is an old and "hippie dippie" model for spectrum disorders where they refer to them as indigo children and they claim that kids used to be called that because the baby was replaced by fairies and now speaks truths beyond their years. Look at the classic traits of a vampire. Being scared of water, can count things very fast, maybe has surprising strength and old wisdom.

Autistic people aren't extra wise, they span the range of dipshit to genius like any other category of people. Autistic people do spend a lot of extra energy trying to predict a world that is confusing and hostile to them and when they vocalize how they navigate said world, it creeps people out who have to deal with a society that says lying is wrong but the rule actually is "fuck it, do whatever you can get away with."

If you get hooked up to "caregivers" that take away your agency and you are an outlet of justifiable (to the abuser) sadism for them you can't run far enough. The state will put you back in their arms.

Autism Speaks is a eugenics organization. Autism does not mean a person is unaware of the world around them, actually quite the opposite. Also the messaging that autism can be a super power is the same thing in disguise (see the most recent Predator movie or Baby Driver). It's a sensory disorder. It's not a lack of emotion, it's that overload frequently makes it difficult to respond to people and situations as "normal people" expect so abuse becomes a default mode for "caregivers". There are organizations that are CURRENTLY advocating for electric shock or physical harm to help "correct" autism.

Yeah... (speaking about the perspective of a hypothetical person in a situation of abuse) Change your name, run away, hop trains. RUN if you can because you're autistic enough to see that people will always abuse you in any situation where you're put into the care of the ghouls that own your name. Even the Arc and Autism Self Advocacy Network have some massive problems including putting autistic people with weird abusive special interests into positions to hurt people who just want to live their fucking lives.

I recently saw this video by a fellow I really relate to where he lays out all the things I say in a fit some times but... yeah. They lay it all out. The history of helping the disabled is pretty wrought with not checking in with the disabled. Also, I think they are a hilarious humorist and the rest of their stuff is fun.

https://www.youtube.com/watch?v=sOlEjWaejAw - You Don't Seem Autistic - or - How I Learned to Love the Meritocracy _ Woohooligan Comedy


There's a whole new wave of retro FPS shooters that you might enjoy. Heck, we might even be on the third wave or so of them now (they started to come back ~2010). 'Boomer shooter' is the term to search for: https://www.inverse.com/gaming/boomer-shooter-definition-ori...

Also check out advanced gzdoom mods. The gzdoom engine never stopped innovating and now supports near full 3D environments with slopes, room over room, dynamic lighting, etc. but still has the same core frenetic and fast gameplay of the core engine. Here's a good taste of what's out there: https://www.youtube.com/watch?v=O2Db5O5-xk0


I use notmuch[1] with lieer[2]. Notmuch maintains a tags database with full-text search indexing for a set of maildirs, and Lieer uses the GMail API to synchronize messages with a maildir and labels with notmuch tags. There are lots of notmuch frontends available, but I use the built-in Emacs frontend.

[1]: https://notmuchmail.org/

[2]: https://github.com/gauteh/lieer


> > Uh no, you need BOSL2[0]

> And threadlib[1]

And dotSCAD[2]

So, OpenSCAD user needs to install a lot of extra libs[3] to be productive;)

[0] https://github.com/revarbat/BOSL2

[1] https://github.com/adrianschlatter/threadlib

[2] https://github.com/JustinSDK/dotSCAD

[3] https://openscad.org/libraries.html


100% this. The language is designed for its use case which is packaging and configuration (nothing more or less). It has a learning curve due to being lazy and functional but works great once you get the hang of it. But the documentation of all its functions is so annoying. You have builtins and the nixpkgs functions[1]. There is learning the language, and then learning how to use it. Then there is the entire ecosystem of custom packaging functions that have their own pros/cons [2]. The issue isn’t with the language but the difficulty with trying to make existing tooling work the Nix way. That part is where I agree with the curse of nix. But the effort is worth it because once the packaging is complete it just works (forever).

1: Best resource I’ve found is this: https://teu5us.github.io/nix-lib.html

2: The status of lang2nix: https://discourse.nixos.org/t/status-of-lang2nix-approaches/...


> Given that developers need to be paid, and resources cost money

This sounds true, but isn't. Some software grow new features and should sell new versions to users who want those features. But many applications continue to be rented while they reached peak features a long time ago.

Office 97 was fine. Office 2003 was more than fine. You buy it once, you should not need to buy it again, or "rent" it, for no benefit at all. Same for Windows NT / 7. Every Windows version since 7 is worse than the previous one!

Developers need to be paid only if they build something users want. Many times, the opposite seems to be the case: they build things users would really prefer not to have, yet are difficult to avoid.


If you're not aware, Wikipedia itself has an article on unusual Wikipedia articles: https://en.wikipedia.org/wiki/Wikipedia:Unusual_articles

Some of them can be quite... weird.


I am one of those folks (born in early 1980s in Minsk). One can get a taste of that era by listening to the amazing music from bands like Kino and Nautilus Pompilus.

Some example: https://www.youtube.com/watch?v=qWEfVZN64jU https://www.youtube.com/watch?v=syTqQ-TU_c8 https://www.youtube.com/watch?v=Aew6MJLyVL4


On Firefox for Keyboarders:

Fast Tab Switcher little used but absolute best Firefox extension for navigating tabs. It shows all tabs for all windows in one drop down accessible by a keyboard shortcut (I use ctrl-q in windows) Tabs are filtered as you type.Tabs can be quickly closed by ctrl-del in drop-down. https://addons.mozilla.org/en-US/firefox/addon/fast-tab-swit...

Vimium-FF Must have for keyboard navigation. Hit escape key and every link on page is navigable by a key sequence. https://addons.mozilla.org/en-US/firefox/addon/vimium-ff/

Web Search Navigator.

Easy keyboard navigation of search results. https://addons.mozilla.org/en-US/firefox/addon/web-search-na...


I have a gallery of split keyboards, including this one. It's useful if you need an overview of what's available.

I have an ErgoDash with a Dvorak layout and a 3D printed adjustable tenting stand. The Djinn is fairly similar, though the additions are features I don't care for (encoders, screens, LEDs).

I've bought most of the parts to make a Lagrange, but still need to order the PCBs. I expect this to be an improvement on the ErgoDash, since I can include the missing keys (F1-F12 etc).

Just buying a Kinesis Advantage2 would probably have been a whole lot less effort.

https://aposymbiont.github.io/split-keyboards/

(And a discussion from nine months ago: https://news.ycombinator.com/item?id=26179311 )


Just for fun, I tried it in APL.

  cal ← ⎕SH 'cal -y'                                 ⍝ get output of cal command
  bymonth ← {⍵⊂⍨0=23|⍳≢⍵}⍤1↑2↓cal                    ⍝ partition into month groups
  lines ← {⍵⊂⍨0=8|⍳≢⍵}⍤1⍉bymonth                     ⍝ partition into chunks in each line
  months ← ~∘' '¨,⍉⊃¨lines                           ⍝ extract month names and remove spaces
  days ← (23⍴1 0 0)⊂⍤1↑⊃,/,⌿2↓¨lines                 ⍝ partition into days
  trimmed ← ∊⍤1⍉{⍵/⍨(' '∨.≠¨⍵)∨∧\' '∧.=¨⍵}⍤1⍉¯1↓days ⍝ remove excess spaces
  ⎕←53↑(¯2↓⍤1⊢trimmed) , ↑months\⍨∨/' 1 '⍷trimmed    ⍝ append months to calendar where the 1s are, and print
Surprisingly tricky (but still easier than sed IMO :P)

I have been writing a book about how software developers should approach taking care of their mental health - self.debug. You can download it for free here - https://leanpub.com/selfdebug

Its rough and incomplete. Would be great to get some feedback on this.


I remember when google was the shining light of “be nice company” that we all dreamed of working for, at odds with the evil that was M$crosoft.

And, from reading all the “why I left google” posts and hearing about them leaving China, the old google of 20 or even just 10 years ago was the good or even just a better google.

With how google went from “do no evil” to this, with how Facebook has always been profits over ethics, with how Amazon treats employees generally, etc:

Which employers are the “nice company making nice things and you’ll be able to sleep at night” tech companies nowadays?

Who should we safely not feel bad about wanting to work for?


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

Search: