skysight-inc/HackerNews huggingface dataset:
Storage devices are so quirky that I've given up on integration of SFF compute with storage.

Compact storage devices make tradeoffs, which may or may not fit your needs, e.g. flash/SSD tier, 10GbE/2.5GbE NICs, memory, TPMs, low-power vs. cores. External storage offers more flexibility, which will increase as USB4/Thunderbolt become widely available and fall in price. For now, USB 3.2 JBOD with ZFS is workable with external enclosures, https://oyendigital.com/multi-bay-storage

Wish there was a NUC-sized device with an LSI SATA controller and external connector. If we're lucky, the https://frame.work "modular laptop" approach will be adapted to compact desktops based on laptop chipsets.
Golang is:

- the language with the best and most complete standard library

- the language that is the easiest to read due to: the lack of expressiveness/generics/OOP/etc., the forced convention (by the compiler, go build, go mod, etc.), the fact that gofmt can't be customized, etc.

- due to this it is the easiest language to maintain or contribute to, because you won't spend hours trying to decipher what it's doing. You can't be too clever when you write Golang. In many languages the complexity is on the reader, but in Golang it is much more balanced. People complain about Golang being harder to write, but how boy they should really start appreciating how easy it is to read.

- and in turn one of the most secure language you can use because it's extremely simple to audit and review code in Golang. As an ex security-consultant I've reviewed many codebases in many different languages and Golang codebases were in general the most secure one (albeit nil dereference bugs).
>I would expect a defense lawyer to say something like "The tool so confuses its input that it can mistake message data for its own internal instructions. How certain can we be that it has properly analyzed its inputs and maintained the necessary chain-of-custody metadata, and provided adequate protections against evidence tampering?

To be clear, all you accomplish with that statement as a defense attorney is that you didn't get a credible enough expert, as any Computer Scientist should point out that is the fundamental character of the Von Neumann computing machine architecture, the very model of computing that most computers are designed according to, and most programs are written to run against. They would then further expound that software development had developed methods to mitigate this problem, which minimize the llkelihood of such architecture quirks being exploited, and most certainly leading to a state of affairs where any such vulnerability could be identified via a source code audit. This would open the door for the defense to require the prosecution to produce source code for their tool to prove to the court whether the vulnerability exists or not.

A good defense would then follow up by asking whether or not there was some way to detect whether there had been a successful exploitation on a device. "That's where things get tricky", the expert should reply, "because if arbitrary code can be run, given enough time, someone could cover their tracks successfully. It is plausible a mistake could be made in terms of the implementer of the exploit missing a timestamp, not properly serializing something, not cleaning out a log that could be then reconciled with something else, but the possibility of a completely clean alteration given enough time and resource was still on the table.

The prosecution would then endeavor through chain of custody logs, affidavits, data on the device, possibly comparisons to other cases convince the jury this is all hogwash, and the defense is grasping at straws, and ultimately full of shit, without tipping the defenses hand that if this case is in question, other cases may be.

Mind the brilliance in Moxie's actions is not that he'd get someone off the hook, but that he's now forced prosecutors into a position where if they want to rely on Cellebrite data as a lynchpin of their case, they have to open the door to public scrutiny of the implementation. Of course, this will just be mitigated by law enforcement ultimately engaging in parallel construction anyway.

Or, Cellebrite updates/audits their software to mitigate the vulnerability, or re-implements it on a non-Von-Neumann computer.

Again, not a lawyer, just read some stuff on how to think like one once.
When building Eduflow.com we needed in-app and email notifications. We built notifly.io to solve it and released it as a SaaS.
I believe one big advantage is that most FPGAs can have multiple clock domains. So while everything on the Propeller is tied to the system clock (and the system clock is hopefully fast enough that you have the resolution that you need to do the right thing at the right time), FPGAs can simply use clocks running at different frequencies.
I think they mean at the cellular network level (or stingray,) not the phone itself.
Hugo has one-file creation of shortcodes + config params too, which IIRC is the same workflow as doing it in Jekyll: https://gohugo.io/templates/shortcode-templates/

Extending the Markdown rendering appears possible without building Hugo itself, albeit not for lists: https://gohugo.io/getting-started/configuration-markup/#mark...
The developers say positive things after having spent months on this effort. It's just as likely a psychological defense mechanism against melancholy as it is an actual optimism for the new Eldritch Horror that's been unleashed on them. Especially if they weren't given a choice on what language they would be using.

> Our engineers come from a variety of programming backgrounds, so we certainly do have a diversity of opinion on Go vs. other languages. That said, Go is doing the job we “hired” it to do when we started Goliath, and we’re thankful for the team driving its continued evolution and the community that has built up around it!

If you were calling a reference for a potential new hire, would you consider this a glowing review?
Alas, that isn't as true as German's tell me it is, I find.

"Weg" <- how do you pronounce this?

"Geh weg" (go away)
"Der Weg ist da drüben!" (the path is over there)
Relevant talk by Rich Hickey, “Simple Made Easy”: https://youtu.be/kGlVcSMgtV4
I like Go, and it's not just that, but you're also not wrong.
True Lender Repeal Moves Forward. What's Next for Fintech-Bank Partnerships?
If you are interested in material like this, check out https://www.reddit.com/r/TheMakingOfGames/
My impression is that adult learners tend to struggle with Kanji even though furigana exists because age is a strong identity factor in Japanese culture and furigana is usually used in age-specific contexts.

So a Kanji that might be accompanied by furigana in a shounen manga (geared to kids) typically won't be accompanied by it in a seinen novel (geared towards young adults). Needless to say, adults don't necessarily want to read doraemon (a kids series) as beginner Japanese learners.
Yes this. It's much more reliable to just put the RFID card inside my phone case. I can continue to swipe into transit "with my phone" even if the battery is dead.

Also I always have to disable NFC on my phone because I have 2 phones and if they have NFC enabled they're always trying to talk to each other in my pocket and vibrating my crotch all day from it. Really bad UX.
US interests, not US land.
I made a few things for my personal use that are used often that I'm quite pleased with, in no particular order:

1. Wallpaper adhesive (https://github.com/jacobmischka/wallpaper-adhesive), an electron app I made ages ago when electron was still relatively new that creates spanned wallpapers for multimonitor setups based on your displays' resolutions. I use it every time I change my wallpapers, every month or so.

2. ics-merger (https://github.com/jacobmischka/ics-merger), a suite of tools including a webapp to merge separate calendar feeds together into a grouped feed, with possible subgroups. One can navigate through the subgroups, see event details, and subscribe to a merged feed, among other similar things. I made it for work, where it's used as the master departmental calendar feed. The webapp heavily relies on fullcalendar, but the added features aren't trivial.

3. Tea whistle (https://github.com/jacobmischka/tea-whistle), my second simple microcontroller project I made for my mother for her birthday because her teapot doesn't have a whistle so she kept accidentally boiling it over. It just polls the attached thermometer and beeps when the temperature is over boiling. She uses it every day and says she hasn't boiled it over once since!

4. inmytime.zone (https://github.com/jacobmischka/inmytime.zone), a simple webapp that allows you to create a URL that converts the time you give it into the local timezone of whoever is viewing it. It's effectively just a clone of https://everytimezone.com/ or one of the many other similar tools, but much less busy and without ads. I let the domain expire a few months ago, so it's not currently available, but I just renewed it so it should be again once the domain servers propagate. Edit: Seems to be back up for me now, at least.

5. Gym notebook (https://github.com/jacobmischka/gym_notebook), a flutter app I made when flutter was still quite new to track my workouts using firebase for storage. It's quite rough around the edges, fetches data from the network way more often than necessary, and needs a few bugfixes and could use a bit of work, but it's still good enough for me to use it 4-5 times per week.
Esxi home server - it’s a little under powered in terms of CPU cores, but it’s a great little unit. I like quicksync from Intel for video transcoding, however it’s other features make up for it.
I added the Kotlin Interactive Shell to Homebrew (and you can too)
Publications Who Need Writers at $300 to $750 per Story
It took me about an hour to set up an AWS static website backed by S3 and cached by cloudfront. I use Jekyll and simply sync the _site folder to s3 to update my website.

Some nice things about this setup:

1.) AWS static sites don’t insert trackers
2.) There is zero maintenance
3.) Cloudfront + static website is very fast
4.) Setup can scale near infinitely (so can your bill)

Downsides:

1.) You are locked into AWS. Although migrating to another provider to serve static files would be trivial.
2.) If your website took off in popularity the bill might be more than you are comfortable with.
True if your only definition of “thought” is political bullshit.

Thankfully it’s not mine.
Search for European Radio Emissions Directive, for example “duty cycle” and “transmit power”
I live in a small city, but it's the biggest one 100+ miles in any direction, so it shows on most maps. AT&T laid fiber everywhere, but just capped off all the endpoints. Now any plan to lay municipal fiber would probably interfere with AT&T's infrastructure, and AT&T could hold up the process. If anyone actually made anything that worked, AT&T could just finish the job (that they got grants to do that assumed they wouldn't just stop after the fiber was laid), and compete on price.

Shady, shady business.
Yeah, the VSCode UI runs on my Mac, but it runs a vscode remote server on my NUC. Debugger, tests, etc. all run on my remote machine.

I originally did this in a Linux VM, but got tired of the battery hit that running a VM 24/7 has.
If code can panic it should be documented. Code you write shouldn't ever panic without good reason during the regular runtime of your application. A panic means that the current goroutine has encountered an unrecoverable error, which is usually only the case for bugs such as out of range indexes or nil pointers.
I'd say Golang has successfully started replacing Java everywhere...
This is deeply silly (so is that "dreaded" metric). Go is here less dreaded than Julia and Swift, two enthusiast-driven languages, as well as Ruby, and is just 2 slots up from Python.

You gave away the game when you pointed out it was the "#21 most dreaded". What is anyone supposed to do with that very specific number?
Covid Hospitalized Patients per 100k – 25 Most vs. 25 Least Stringent States
CLI wizard to build infra

Uses a game loop to iterate over parameter collection.

I type something like “create kubernetes cluster” it checks for cloud creds or asks, and proceeds to gather the cloud providers params.

F5 saves state to JSON :)

It’s opinionated in that it only ever spins up a new account under an org. Blue/green accounts :)

Infrastructure people are insane to babysit all that (I used to be one).

It’s old man sysadmin rearing his ugly head again.
>IDk what "artificially look like there's induced demand happening" means.

Urbanists sometimes intentionally undercount existing traffic and overcount later traffic, to try to paint public transportation infrastructure in a bad light. "We widened the public transit freeway by an extra lane each way, and now it handles ~33% more people per day. See, freeways make traffic, public transportation is bad"

The public transit freeway in this instance did not make any new traffic. It moved traffic from other sidestreets, and it allowed people who were underserved by transport to finally get served by transport. But nothing new was created here.

It's like saying, "Hospital A has 100 sick patients and is full, but we can't build a new Hospital, because it will make more sick people". And then a new hospital B gets built, and they say, "see, before we had 100 patients, now we have 200 sick patients, the new hospital induced more sickness!" But in truth, the Hospital didn't "make" any sickness, it's treating patients that were previously uncounted or not getting treatment they needed -- that's why we wanted to build a new hospital in the first place.

> If we could we would travel many more KMs. 1000s of times more, if teleporting existed and made travel instantaneous. The cost of travel, is largely time.

Right, and that acts as a hard cap. You can't travel to two places at a time, and you aren't going to want to spend every second of your life traveling somewhere. So, unless you think Winnebago's are going to be a thing everyone lives and works out of 24/7/365, there's a very explicit hard cap on transportation usage.

If you make a teleporter between California and Japan (for example), then an urbanist could paint that as "your teleporter is bad, because it induced demand for trips to Japan". But it didn't -- for every one person in your teleporter, there's one less person on an international flight. Even if your teleporter makes trips to Japan more popular and common (because it's now faster + cheaper to get there), it still doesn't break this hard cap, those trips are disappearing from somewhere else.

I live in Michigan, I would normally never grab lunch in Japan. But if I leave to go to Japan for lunch (using your new teleporter), then I can't be driving on US-131 to pick up lunch back at home (a totally normal thing I would do today). I'm not going to suddenly eat 2 lunches just because your teleporter exists, so even though someone would argue you have "induced demand" for trips to Japan, you haven't really done so, you've just taken other trips and converted them.

The only way "induced demand" will ever apply to cars, is if that hard cap is broken somehow. Driverless cars, for example, could actually induce demand, since a car no longer has to have a person in it to take up traffic space, and plenty of people would send driverless cars around, there's no longer a natural hard cap on transit usage.
It's funny but I'd still say that Golang is the easiest language to maintain, due to the code being harder to write but easier to read.
https://github.com/grdl/git-get - for cloning, managing and organizing git repos. Inspired by the folder structure created by "go get".
Lawsuits Won't Get College Students a $55,000 Refund for Remote Learning
Which ones are you thinking of? Are they traits we have in common with rams? Things like taking vows of celibacy are more easily explained as culturally created behavior, among other things because rams and mice don't do it and nobody is born a monk.
Akasa's fanless Intel NUC cases are excellent. Hopefully they will create a fanless case for Ryzen NUCs, or generalize an Intel fanless case to support multiple port layouts.
Nice https://m.youtube.com/watch?v=ekd2MeDBV8s
If you look at an eggplant in its early stages, you will understand the name.
Dragit: Intuitive file sharing between devices
I can do it on individual words, but as soon as I speak in full sentences and with speed, it comes out however it wants.

Though and tough aren't a problem though, "thinking" in the middle of a sentence is real tough though.
I do not believe the majority of judges would buy this.

At least I sure hope not.
> lots of startups have chosen Go early and are stuck to it inflexibly.

Is the implication here that it's a common experience among startups to pick Go and regret the decision? Can you give any evidence to support this (e.g., a survey of startups that chose Go and whether or not they regret their decision)?

Or perhaps the implication is that Go is uniquely difficult to migrate away from? I have a hard time believing that--it's expensive to change languages across the board except for a handful of special cases that were designed for interop from the start (e.g., Java and Kotlin, C and C++, etc)--I don't see anything that makes Go uniquely difficult to migrate away from.
I would love a small MicroATX case without support for DVD-RW or 3.5" drives. MicroATX is inexpensive and effective (cases usually support standard ATX power supplies and PCIe cards without a riser, it's easy to mount a full-size GPU and common heatsinks, etc), but it seems hard to go significantly smaller then my own case (cm 36x36x17). But there's a lot of empty space in the front, so it should be very easy to get the depth down to 25-26 centimeters or something like that.

But I couldn't find anything like that, either you get flatter, HTPC-like cases designed to stay horizontal, or cube cases (which aren't so nice IMHO, since they take more horizontal surface on the desktop), or you need to find a small mini ITX cases (which can get very small, but they may require SFX power supplies and can be harder to cool down).

A desktop is still a nice thing to have. They can be quiet even when the workload is consistently high.
Again, I suggest that if we want to understand how this stuff plays in reality, we'd do better looking to examples of how arguments like this have fared in previous cases, rather than trying to reconstruct this case from first principles. The idea of arguing against the reliability of computer evidence is not a new one; nor are vulnerabilities in forensic software (or, for that matter, the existence of very important major commercial forensics tools that defendants could know about and do vulnerability research on).

Here, by way of example, is the Grugq talking about this idea twenty years ago (presumably: about EnCase).

https://twitter.com/thegrugq/status/1393941106136543232
The whole point of Golang is that it is easy to read, contribute to, and maintain. This is because it is less expressive, and you have less freedom when you write code. In turn this can make writing code harder, but that's the trade off you have to take if you want to make reading code easier.

I firmly believe that people have managed to write amazing and large applications without generics, and the addition of generics will simply kill one of the biggest feature of Golang: simplicity.
Go can easily replace Python or Ruby (because it is faster and libraries are available to do what you need). Go can replace Java and C# especially because concurrency is easier and performance is on par, if you can get along with the inferior libraries Go provides. Go cannot replace C++ in any function, because its compiler is just too primitive, low-level things are impossible and libraries will never be on par with what C and C++ have.

But generally, Go is nice because there is sufficient tooling to do most things nicely and the language is primitive enough to make the tooling work in almost all situations. Which is different from C++, because tooling there is always too stupid for templates, macros, inheritance and pointers. And it is different from Java where tooling is unusably complex, slow and enterpricey. Also, Go didn't accumulate too many "surprise" misfeatures yet, so code can be more reliably written and reviewed than in any of the other languages the parent named. Panic can be seen as the rare instance of such a misfeature, but usually it is only used to signal typically unrecoverable problems like "out of memory". So it is far from the footgun that exceptions are.
I haven't tried it but I did go through their doc. Any thing slightly complex (like toggle) is behind a premium. I feel it would be great for creating layouts, but to create a component, I still have to go through the same trouble as material ui (but with classes instead of components).
> Japan and S. Korea are particularly close to China and prefer we’re around to tamp down Chinese aggression.

It's not that simple. American presence on the Korean peninsula makes reunification efforts overly complicated. By some estimates, reunification would grow the Korean economy to be the third largest in the world. It would also give Koreans access to Russian pipelines and a large border with China. When climate change opens up arctic trade routes and frozen arctic resources, Russia will be in the position to benefit the most (although Putin relies too heavily on his tsarist-Stalinist strain of conservatism to be able to exploit the economy as efficiently as liberals or perhaps Chinese communists might). As convenient as it is to have a powerful ally in the U.S., the U.S. is no longer in a position where it can dictate the behaviors of foreign nations as it once used to, especially regarding China. That's simply a reality that Koreans have had to come to terms with, despite Americans seeming to believe that things can just return to how they used to be half a century ago.
It is a language for people who like to get things done and get reasonably performant code for free. Relative to folks grinding in some of these dynamic languages doing contortions to deal with basic things like concurrency, twisting themselves into unimaginative ways to get that code coverage bump from 90% to 100% (the hardest part) just because their language cannot provide a semblance of guarantee that code "works" or has no syntax errors unless it is ran, unable to refactor without confidence unless the entire team is willing to commit to 100% test coverage and even with the test coverage the refactorings taking orders of magnitude more time than Go as now you need to parse through your test results to see exactly what your simple refactoring of changing a method name or moving a method from one file to another broke and then fixing it as opposed to the superior tooling of Go (or some other similar statically typed language) just doing all that for you in the press of a few keystrokes. It is also a language for those who like seeing a lower memory foot print, a lower cpu foot print, a simpler distribution story (literally copying over a binary to the target system)

The verbosity of Go (and even Java for that matter) is 100% worth it for me for all those reasons. It allows me to iterate fast, make changes with confidence and not have to feel guilty that my test coverage is only 92% because I am not going through the trouble of covering some branches of code that returns an error message (that would otherwise require annoying effort to trigger in your tests) as the compiler guarantees that all those

`return errors.New("some error")`

will execute if the error condition is ever hit in production which was not the case when I was working in python unless I went through the effort of having my test cover that bit of code.
Great advice. How is this managed where you are? Do you share the same code between CI and the local workstation?