skysight-inc/HackerNews huggingface dataset:
> The BCM2711 chip that we use on Raspberry Pi 4 can address up to 16GB of LPDDR4 SDRAM, so the real barrier to our offering a larger-memory variant was the lack of an 8GB LPDDR4 package. These didn’t exist (at least in a form that we could address) in 2019, but happily our partners at Micron stepped up earlier this year with a suitable part.

All other SBCs in this market segments have also been capped at 4GB - I'm hopeful about this leading to larger memory options from other vendors as well before long.

Great of RPi to keep pushing the envelope.
I think the reason this process was used is because if you are some random employee at Microsoft, you don't have the ability to just acquire a company. You probably don't even know who to look for to ask for such a thing. But what you can do is create a req for a position and refer someone you know for it.

I am guessing that the average "higher up" at Microsoft does not know what AppGet is, or even what the priorities for package management in Windows are. It's just not a high level strategy thing, it's a low level engineering thing.
If you write Ruby from scratch, sure. If you work in Rails you have to work around everything being autoloaded on boot.

Best bet is to just build modules to namespace your functions.
To confirm, that’s two dynamic libraries, right?
You mean like disabling comments on a blog? Please explain what thought process could possibly lead you to this conclusion.

You can scream whatever stupid shit you want in public but why in the world should you have the right to use someone else’s megaphone to do it?
I understand, but think about in next 10 years when all the hairs turn grey.
> you just don't notice it, because the cpu's are fast enough to do it nowadays

On my Intel NUC, which is a few years old, I have to use an extension[1] which forces YouTube to serve h264. Otherwise it's a loud laggy mess.

[1]: https://addons.mozilla.org/en-US/firefox/addon/h264ify/
C++ has namespaces. Python has modules.
He missed two that I think are really important.

1. Arraymancer https://github.com/mratsim/Arraymancer

2. The new version of the garbage collector understands move semantics to optimize its reference counting so unlike Rust where you have to deal with it yourself Nim will handle it for you at the expense of a reasonable amount of memory. https://youtu.be/yA32Wxl59wo?t=855 Watch the whole video for more context if you care.

I think it's a really nice language, too many pragmas but still really nice.
Because it works, it's reliable, it has good ACID compliance, it can scale, and it's supported by the big cloud providers.
Why are you hoping for that? Is non-hallucinogenic anti-depressant a bad thing in some way?
Small country, small market. Small market, low supply. Low supply, high prices.
So I just got a fun project working with a Raspberry Pi 4. I have it generating a slideshow of fake images using the impressive BigGAN model, and displaying those on a 7" touch screen.

It's just for kicks; I wanted a little AI daydreaming on my desk :) Also to see if it was even possible, given how large the BigGAN model is. But lo and behold the 4GB Pi is _just_ enough to run it. I'm half tempted to buy this new 8GB version so I can run at higher resolutions ... but I think the precompiled Tensorflow package for RasPi is 32-bit anyway so might not matter.

Here she is: https://i.imgur.com/i22METZ.jpg
The JS community doesn't give a fuck about using correct technical terms. It's like listening to a 5yo child trying to use adult words, you have to know to interpret them differently.

"Isomorphic Javascript" ~ Same code running in browser and server, has nothing to do with isomorphism in the mathematical sense.

"O(1) build system" ~ It's faster than others, has nothing to do with big-O notation.
Been there, done that... it's why I think SES is one of the AWS services that I truly believe is worth every penny.
Unless I'm misunderstanding you completely, what's wrong with that idea? Currently, anti-depressants are a very hit and miss science, leaving many people further frustrated by therapy that was supposed to help them instead. Anything that can move towards better medicine in the future should be a good thing, no?
I looked into this for the rpi4 a while ago and unfortunately the PiTop stuff won’t actually fit a rpi4 due to how it’s designed... at least that was what I was able to work out, I would love to be wrong.
The js via html tags is something I see also in Alpine.js, which has gotten a lot of press lately.

Is this an alternative, or is each really its own niche (and you might use both)? Is there a comparison?

Edit: It seems that htmx is almost entirely around AJAX, and Alpine around a) binding element data to objects and b) css & animations (such as hiding a popup). It would make a lot of sense to use them together (and the hx- even complements the x-). Is that correct?
I also read recently that the lack of cooling can really throttle the performance of a Pi4. Do you have a good heat sink and fan installed?
Things I want to do this year to help reclaim the web:

1. Run my own personal web server. Starting on a cloud provider, but eventually from my flat.

2. Write my own blog on my own web server. Not using a platform. Not tracking users.

3. Push my side-project code to an open Gitlab repo

Way down on this list is "stop commenting on HN", so if you never hear from me again, be glad ;)
The OS uses free RAM as a cache for file reads anyway. Temporary directories that are not meant to persist after reboots are often mounted as a ramdisk however.
NightMKoder's comment was referring to the x32 mode where an application uses the x86_64 ISA and registers but with a 32-bit ABI (ILP32 - int, long, pointers are 32-bit). The kernel is full 64-bit, so there is no overhead like in PAE where the kernel is 32-bit and needs to temporarily map physical addresses above 4GB (using highmem support). On the application side, x32 has some benefits over x86_32 since it has access to a larger register bank and wider registers if needed (e.g long long).

On ARM, there are patches implementing ILP32 with an A64 ISA (AArch64 mode and registers). While there probably is an improvement over the A32/T32 ISA, the benefit is not that great since the 32-bit ARM architecture already had 14 general purpose registers (AArch64 has 30).

The reason the arm64 ILP32 hasn't made it into mainline Linux is not fully justifying the software porting/maintenance cost over the benefit it brings. Full 64-bit software stack is in general a better option unless you run in a very constraint environment but, in that case, an M-class ARM CPU is probably a better option anyway.
Proxy wars and spying kills less people than world wars. It's objectively better.
I'm currently working on a project which I hope to launch later this year that gives users the ability to run, view and modify software using visual tools.

There are too many meaningful problems technology could be solving and too few programmers interested in solving those problems. Giving more people the tools to build their own solutions or adapt others is something that could really change the game. There are a few companies exploring this space but we're looking to create open tools that don't enforce a vendor lock-in and tools that defend user freedoms. Viva la revolución!
Why not have Linux directly on your Android?
There are great options and the VNC works reliably.
I think it's a great idea. Fresh start, clean and simple, just displaying HTML content.
If you take an anti-depressant pill everyday and it solves your problem, why is that bad? Are you hostile to medication in general?
Black desktop usually is a sign of a Windows licensing/activation issue.

I'd guess when your DVD drive opens, the driver somehow reloads, and windows sees a different serial number, so the windows license is no longer valid. It then auto-re-licenses itself a few minutes later, provided it has an internet connection and the desktop background returns.
It's probably much more intuitive when you come from editors like sublime / atom and similar.
That tops out at 16GB RAM and curios how warranty service looks like in case you have issues.
Yes, it's compiled into two different libraries. Nim hasn't magically made cross-platform dynamic libraries. But the code for both libraries is the same, just compiled for two different platforms.
I love Unpoly!

But them using CoffeScript is the only reason for why I've not contributed to Unpoly even though I've found both bugs and stuff I'd like improved :/
Better Product Internationalization with Localization Best Practices
In c++ functions can be marked ‘static’ to make them translation-unit local, or you can put them in a library namespace, if they’re public. In a particular js bundler/runtime usually a module system is used (or just iife/umd wrap) which prevents function names from populating globals.
I’d be wary just from the fact someone tried to piggy back off the authoritative work of Elements of Style.
That's more recent. A long time ago (and I'm working from memory, so best to fact check anything I say, because my memory is terrible) it was common to use a particular rat poison in dry milk (and I forget exactly what it was). There were certain standards as to how much rat poison you were allowed to have. It was well known that this would kill a small percentage of babies, but it was thought to be a reasonable tradeoff at the time. To be fair, it wasn't just Nestle. In Japan, the dairy giant Morinaga had the exact same problem. I believe there were law suits that dragged on for literal generations and eventually things changed.
But not necessarily nutrients/fertilizers and most tractors and transportation today run on ICEs. So it's still not a free lunch.
While I agree that many things can be simplified into functions, I would like to point out functional languages don't necessary means you are going to have cleaner code automatically.

I write Haskell for a company that it seems people here like to experiment with extensible-effects-interpreters-whatever pattern, that we end up with some 81 "effects-model-repository-handlers-command-query" packages in a project, the FactoryCommandQueryEffectContextGeneratorRepositoryHandlers type is not limited to Java.

The main reason behind this kind of code seems to be "what if you need <insert a property here>?". As other comments pointed out, using a class over function can help caching the result, save / restore the state, share the state and so on, but do we need these properties? The author is talking about a homework, it's not a piece of code that you run on some very important production servers, there's no need to cache / save / restore or whatever. What if you need it in the future? Update the code.

I somehow start to think maybe this kind of mindset is inevitable in a project's lifetime, until people are confident enough to say "If we need this need code to be cachable / restorable / whatever, give me time, and I can update the code."
Const Is a Contract
This is why I've got a 'toggle always on top' action mapped to Ctrl+Win+A with Autohotkey. Not sure why Microsoft chose to hide that particular functionality when it's natively supported by windows.
Alexey Guzey’s sleep deprivation self-experiment
The speed comparison between my blog on Ghost and my blog on Hugo (an SSG) indicated that it is faster on Hugo. Note that I’m comparing time taken to serve the website, not time taken to generate files.

The same content with the same URLs is ranked higher by Google after the switch, suggesting that Google prefers this.
Then comes risk management and I would tell you "good bugs that require creativity and deep system knowledge to find" are not dangerous.

It is sexy and all to sell "we hacked you using emacs through sendmail by the moon phase exploit that happens every 2 months". But really how many people will be able to exploit that? My company is not target of a state sponsored actors. Automated tools, checklist evaluation and decent administrators will be good enough for most of companies. Ordering pentests from time to time is good practice to check if administrators are doing their job as in "trust but verify".
Don't need a dedicated OOP lang for that benefit.

It's an age-old discussion. As old school software engineering became sufficiently advanced, some people bundled their favorite "state of the art" concepts, and called it OOP. (Also: Multiple people, multiple different concepts of what "OOP" actually precisely means.) It became a horrible hype, and from then on out everyone was taught to see all these concepts as "OOP concepts" that elevate OOP over other programming paradigms.

But they're not and they don't.

The only real "advantage" is, OOP languages are opinionated and will try to force their interpretation of these concepts on the coder. Which is nice, if you happen to like it that way. Just not everybody does.
Shouldn't be impossible - they are somewhat similar to 3270's. Unfortunately, there isn't a Hercules for the AS/400. Someone would need to create it.
This really hits home for me. Somehow the centralized web became better, maybe its a user experience thing. One can't help but wonder if these are solvable in a decentralized or even federated approach?
The language Whitespace [1] has 3 characters only: spaces, tabs and linefeeds.

[1] https://en.wikipedia.org/wiki/Whitespace_(programming_langua...
Pushing history state is the default, but it can be configured as needed on a case by case basis.
> is there a way to make CLI "more discoverable"?

The first time I used Cisco’s IOS was pretty eye-opening to me, and I was thoroughly confused why something like that wasn’t present everywhere. (The only other place I’ve seen it is in MikroTik’s CLI.)

For those not familiar, at any point anywhere you can simply type a question mark and it will tell you all the valid inputs (commands, arguments, etc) at the exact spot your cursor is at and then put you right back where you were ready to continue typing.

You could discover a lot — not only what you were searching for, but related functionality — just by throwing a ‘?’ at it whenever you didn’t know what to type next.

Of course it helped that everything was named in a very straightforward manner. Something like this is never going to help you to discover a new Unix command because many are “cleverly” named. But once you find one you’ll be able to use it without ever referencing a manual page.
Like a Rock Pi 4?

https://rockpi.org/rockpi4
From the about page:

> As the name indicates, micro aims to be somewhat of a successor to the nano editor by being easy to install and use in a pinch, but micro also aims to be enjoyable to use full time, whether you work in the terminal because you prefer it (like me), or because you need to (over ssh).

Personally, as someone who uses nano a fair bit, this really doesn’t hit many of the reasons why I use it in the first place. It’s much less “standard” and depends on a language that is not readily available on preinstalled on many platforms (like it or not, C is everywhere and comes “for free”). I’m not seeing many additional features compared to nano, either. And a bit of a personal preference: nano’s keybindings sorta match readline/Emacs/Cocoa, so it works a lot better with my muscle memory.
Why use another charger when your existing charger should do the job?
If Twitter just up and bans him I will laugh so hard I'm likely to stroke out.
Similar issue in my country (Portugal). On our largest second-hand market (OLX.pt) the laptops in the 60-80 EUR range are pretty much all described as "for parts", and their specs are not comparable to this RPi model.

The snide comments like the GP's are due to them living in the american bubble.

EDIT: also note the comment you're replying to is using a traditional workstation "slab" as an example. I'd rather use a small RPi that frees up more desk space than buy something that will make my work environment at home even more cramped!
Redis vs. Memcached – Which one to pick?
When companies no longer own physical offices, interviews will be remote and one can use software filters or dye hair to look younger and avoid age bias. I am not being sarcastic, i genuinely fear of getting rejected due to age.
I think before you do that, you should be careful to ask why the methods are private. Frequently, code like that exists because the private methods are reusable code that is not related to the title of this class. So the solution is first to make the private methods into public methods on separate classes.

And then the resulting classes probably meet some other rule that says "reduce trivial classes to pure functions or closures".

Generally speaking, before a person writes a private function, they should remember that it means "if you misuse it you'll break my otherwise unprotected invariants." Whenever that's not true, you shouldn't write "private". In particular, it doesn't mean "I was too lazy to structure my code correctly so I tried to hide it from the public implementation".
Finally, the first real example. Every single one so far has been pretty weak.
I used to always write custom cover letters to companies I was interested in and got responses often. This time, I got lazy and started submitting applications with resume only. The response rate stayed about the same. Cover letters don't really matter for me
> get ahead of you

You hit the nail in the head. When it rains, the moneyfolk want to hoard as much cash as they can (shareholders gotta buy that new Porsche).

It's like temporary employment in hotels and restaurants during summer in touristic places.

Only the cycle is 8y/2y (up/down) in the decade) of 4mo/8mo (up/down) in the year.
SDNS v1.0.0 released.Performance improvement 50% more, stability improvement
That's what I was thinking. How would a company approach you if they were genuinely considering purchasing your product? And how if they want to brain rape you?

Maybe being contacted by a product manager or engineer should make you cautious.
Defining “better” is complex. I mean software is a team game at most places so having all the same sort of people can be a disadvantage. So a team lacking an experienced dev can need one more than a team lacking a graduate. Then there is what are you working on and does it depend more on “knowing React now” or general good brains.

After 20 years you may go in circles - most places don’t offer Alan Kay style work, so you process invoices for company A and create api integrations for company B etc. You always learn but I don’t think it’s an exponential rise for most. Can it be?
I've used micro for years and I love it because it's feature-ful on local and remote servers without needing to learn vim or emacs. And much more user friendly than nano. I've recommended it to a few dozen people
(1) Interfaces / typeclasses / traits are good; inheritance is bad. An object is a family of partially applied functions with some shared state; this means tight coupling between them, rather often unwanted.

(2) Not having mutable state is the point. The more state you have, and the more code paths can mutate the state, the harder it is to reason about the program correctly. Examples of various degrees of hilarity / severity abound.

Sometimes shared mutable state is inevitable for performance reasons. It should be well insulated from other parts of the program then. Same applies to other effects, such as I/O. The standard approach is a core of pure functions with an outer shell of effectful / stateful procedures (as opposed to a mix of them).

While I'm on this soapbox, let me remind that Smalltalk was initially envisioned as an actor system, something like Erlang (hence "messages"), but hardware limitations did not allow to implement the original vision.
All of this because they finally chose to draw a line in the sand. Wow.
I think it's more that hiring a housekeeper is an option that most users of these services haven't given serious consideration. They don't know how it works or where they would start.
> Apple has made questionable hardware design decisions lately. If Louis Rossmann is to be believed, the T2 chip + secureboot situation is just as bad as the old keyboard situation. It sucks having no say over the hardware.

His claims were significantly overblown. If your T2 dies, yeah, your data is toast, because the disk keys live in the T2. But the same applies for your SSD dying itself, and the T2 is not especially or uniquely unreliable. Even if it dies as frequently as an SSD, the failure rate is still well within the realm of normal/acceptable. He’s blowing it up for clicks.

The keyboard on the other hand was a documented design flaw. The T2 works fine.

It also significantly improves platform speed and security (and they even left a platform security escape hatch if you want to disable the boot security and run Linux, something they didn’t have to do).

His post was inflammatory clickbait, nothing more. This sort of Apple-flaming, choir-preaching basher content has been extremely popular regardless of merit since long before the T2 or even the removal of the headphone jack from the phones.
Very interesting! I'm glad to see more development in the field of Personal Knowledge Management. There's a lot of cool features Obsidian has which are essential to me:

1. Markdown
2. Ability to create a Zettelkasten
3. Backlinks

What it currently lacks for me is:
1. native iOS app (one app for all note-taking. This is why I can't see myself using Roam Research right now, despite it being a pretty cool project)

Good job to the dev team and will keep a closed eye on this project :)
Well, you don't need to install a compiler for it if your distro ships it (and there is a fully static binary that should just work right about everywhere)
Wasn't the EU single market supposed to fix that?
Another anecdotal case here, I am based in Sweden and around your age, I didn't have any problem finding new jobs in the last years.

Same for many of my colleagues around the same age when our local office was closed.

I mainly used Linkedin and a few connections, but i doubt if it matters.

The only exception I have seen is for cookie cutter type of developers, it is easy to prefer young unmarried ones if they have the exact same qualifications as you.
New fuzzing tool finds USB bugs in Linux, Windows, macOS, and FreeBSD
Troubling Times for Porting Games to Linux in the Proton Era
> - AMD's Ryzen 4000 products look amazing, but (almost?) none of the laptops are 13" with high quality screens.

Lenovo will release a x13 with ryzen 4000 later this year.
I want local machine, so remote VNC is out.

There is no Linux like solution for android phone that runs Xserver and OpenJDK reliably. Samsung DEX emulation was the only usable solution, but that was killed off. Termux can not run OpenJDK, some weird issues with crashing.

Also most devices do not have enough cooling capacity, max performance can be only delivered in short bursts before CPU gets throttled down. If you hack it to run at full speed for hours, it freezes.

PI is simply the only option at this size, with enough CPU power and good Linux support.
That was quick...

https://www.bloomberg.com/news/articles/2020-05-28/trump-fur...
I think LatteLazy was criticizing exactly that.