1,063 karma · joined February 9, 2019
So, I'm leery about this and other things like it. I want a portable, pocketable computer on which I can hack and code away at fun things like graphics and games when I'm bored or waiting in line or whatever, but I'm becoming increasingly convinced that "small size" and "usable keyboard/UI" are mutually exclusive.
Might just give this a try, though!
Poor drivers, weird iGPU issues. Even my last Intel MacBook Pro had some issues.
That, plus it’s puzzling to me that perhaps the most viably customizable thing - the keyboard (which the author of this post also calls out) is available in such few configurations.
I would love a keyboard with a non-Windows super key, with a FN / Ctrl / Super / Alt layout.
Offering an array of layouts isn’t even a viable option on anything else, so this seems like a market they could own.
Perhaps most famously, when Nvidia manufactured defective GPUs, Apple launched a repair program at their own expense [1], and IIRC the fallout from this is what (at least somewhat) led to the severance of ties between Apple and NVIDIA.
I’ve had multiple cases of bad GPUs, bad batteries and the like, and while Apple has denied me service before, they’ve repaired or replaced far more as a percentage than any other computer manufacturer I’ve dealt with.
[1] https://www.macrumors.com/2015/02/19/2011-macbook-pro-repair...
This article connected several dots for me :)
Sure is. So is getting anyone to do more than the default.
I have an extended family SMS group, an "after hours" work SMS group, and an SMS group of some people I play online computer games with.
Nobody across any of these groups is happy with the down-sampled videos, the inconsistent emoji reactions, and other SMS oddities. It's a constant complaint across all groups.
I have suggested we switch to Telegram or Signal multiple times. Not a single person is happy with SMS. Not a single person has even bothered to install Telegram or Signal.
For example, a photo editing suite, word processor, or code editor all have the expectation that they be usable entirely offline, and any additional cloud-based features are coded to fail gracefully.
As you point out, apps like Slack and Discord don't fall into this camp. Not only is their core functionality expected to be online, they are also Electron apps (basically, embedded Chrome browser) that likely have a thin layer of client logic, and load most resources remotely, just like accessing a web page.
Sure, word processors and code editors exist on mobile, and many of them likely work just like their desktop counter parts when offline [1]. But that's not what most mobile apps are. Most mobile apps would be useless without a remote server, and if that remote server needs to make a breaking API change, then you need a way to communicate that.
[1] I assume. It's been a while since I've used mobile MS Word. Even then, I suspect these apps will prompt the user to update or else lose cloud service at some point, even if they otherwise continue to work fine locally.
This is why, as part of a baseline of proper software engineering, it’s so important to get into a configurability/feature flag mindset, right from the start.
If every feature is treated as something toggleable - if every color and padding value is a variable, and every visible string of text is wrapped in a function call that just returns the string, right from the start, then things like turning off animation, making colors more contrasting, or translating on-screen text to another language becomes magnitudes simpler when you do need it.
This is where I have a problem with the pervasiveness of the YAGNI mindset. So many of these things fall right onto the YAGNI sword.
Sure, you can get carried away with premature optimization, for example, but there are so many simple habits developers can and should develop that, once established, will add virtually no time or complexity to what you’re building but will save time and complexity in spades later on.
And if you truly “ain’t gonna need it”, then you still benefit from a more disciplined code structure.
That said, this theory also often attempts to challenge the calorie consumption vs energy expenditure model entirely. I think it’s a bit reductionist to rely solely on calories burned vs calories eaten (or perhaps differently stated, I think the BMR model is over broadly applied and misses how complex your body’s metabolism is), but at the same time, one aspect of a less processed diet is how, after being weaned from the processed foods, it leads one to have fewer cravings, higher energy levels, and less hunger naturally.
So the model of calorie reduction (and conversely, overeating) still seems to have some applicability, it’s just that it’s probably wrong to tackle it with “eat fewer calories” as your first and primary goal. IMO, it’s more effective to flip that around.
Eat as much whole, unprocessed food as you like without counting calories, and your hormones will adjust your appetite and energy levels such that you will inherently eat fewer calories, crave less junk food, and have more energy. The end effect of a calorie deficit is probably similar, but one is sustainable hormonally, and the other is (imo) not.
One other way of stating it - instead of viewing obesity as an effect of overeating, perhaps we could view overeating as an effect of obesity.
MacOS and the rest of Apple’s offerings are not quite like that today, with many new prompts for their services and almost Vista-like permission requests on the iOS side.
But they still “win” just because everything else seems so much worse now.
Open standards are great.
Forcing every company by law to adopt a single open standard will have positive implications more so than not having any open standards, but it will also very much lead to the same concerns of centralization that the author expresses.
In any case, the “foundation of the internet and all it has bred” and the standards driving it are an excellent example of why competing OPEN standards are good, and why forced adoption of just one standard would be harmful.
So, I’m honestly not sure if you’re agreeing with me or if I’m missing something.
Forcing apps and services to adopt open standards is also potentially problematic. If a government body chooses the standard, then they can also exert control over the limitations and features that must be implemented.
I do think we need legislation to promote openness and interoperability, but that does not have to mean that every thing anyone builds must adopt the same set of standards - only that they allow for and accommodate certain user actions and accessibility.
I bought a Beelink mini PC a few months ago because theirs stood out as a solid AMD alternative to the Intel NUCs that I was previously a bit underwhelmed with.
Had no idea the No Agenda guys were also talking about them!
This was very much my experience with my Mom’s brain tumor.
While I can’t say my Mom’s regular cancer doctors gave up too soon (we had an amazing surgeon, as well as an oncologist that helped fight until the final stand) - it was amazing how few voices actually encouraged her to fight.
She was diagnosed late stage, with. 6-month or less prognosis.
From the moment she was diagnosed, she had a literal line-up of nurses, general doctors, and social workers incessantly reminding her how poor her outlook was, and that “there’s no shame in giving up”.
Seriously, it was relentless how often they would come into her room, put on a somber voice, and say “You know the outlook on these things isn’t very long, and we don’t have good treatments for it.”
I will never forget those first few days in the hospital when she was diagnosed and awaiting surgery. The demoralized look on her face. The incongruousness of being asked to concede a battle you didn’t even know you were in until days or hours ago.
It was only a couple of acquaintances who themselves “beat the odds” that finally gave her the other perspective.
Her eventual oncologist also had the right attitude - a healthy balance of positivity and being realistic.
But that was not the norm, particularly among medical professionals. She ended up eventually passing away after about 5 years - 4.5 years longer than expected. Amazing years that we had together, yes with good days and bad days, but days we had together.
And fwiw, I did everything I could to make sure she wasn’t sticking around just for me or for family. She loved life, she wanted to fight as long as she could still enjoy life, and I cannot tell you how terribly set back she was every time she’d encounter a nurse that would look at her like she was a dead person walking, or when she’d get the “no shame in giving up” speech. But the rare voice that gave her (realistic) hope and positivity was an absolute Godsend.
There is a balance to be had here. Prolonging suffering isn’t right, but neither is the reactionary response in recent years to virtually encourage anyone with a terminal illness to immediately give up.
I have no issue with the resolution of the screen myself - it is a 14” screen, which is great for portability (more usable in a car/train/bus ride, less obtrusive in a coffee shop, etc) and 1080p is about right for that size.
My only major issue is with the viewing angles of the screen. They aren’t great, and a MacBook Pro puts it to shame. That said, it’s nothing I notice when working in front of it normally.
For reference, my priorities when buying it were to have a good out of the box experience on Linux, a keyboard that was compact but with home and end keys, a “clickable” track pad similar to the MacBook’s, and finally to support a solid effort to bring a proper Linux laptop (with a proper super key instead of a Windows key) to market, and on all fronts I’m very happy with the Dev One.
My prior experience with a couple of Dells (including their XPS 13 Developer Edition with Ubuntu) were not nearly as nice (especially on the keyboard and trackpad fronts).
That said, others in the thread have other recommendations, so I will only offer one other anecdote in my recent Linux laptop trials - I have been WAY happier with AMD-based PCs than with Intel. Several distros (including Debian based and Arch based) required constant tinkering with Intel drivers and settings to combat weird stutters, while the AMD Dev One as well as a recent Beelink mini PC I picked up, have each run everything Linux without issue.
The MacBook Pro is still my gold standard in terms of hardware quality, but the Dev One is still very comfortable to work on daily.
The classic example is a data table with a text field that filters/searches the results, pulled from a server.
Let’s say you want the results to update “live” as the user types, without having to click a “search” button. So if the user types “bacon” then she sees all results that contain the word “bacon” in them.
Problem is, if the act of sending the text field input to the server and waiting for the results is relatively slow and blocks the UI from updating, then each key press causes a delay between the search results updating on the screen, and the next letter showing up in the search field.
1. User types “b” and then the app sends “b” to the server, pauses, gets a response of all results with the letter “b”.
2. User types “a”, and the app sends “ba” to the server… pauses… gets results. She types a “c”, the app sends “bac”, etc.
Debouncing, then, means the app waits a short period of time to make sure the user is finished typing before sending the search term.
Usually this means every time the user enters a letter into the search field, the app sets a timer for, say, 500ms. If the user doesn’t enter another letter for 500ms, great - send the search term, wait for the results.
If the user does enter another letter within 500ms, then she must still be typing, so reset the timer back to 500ms and hold off on sending the search term out to the server.
It starts by telling me that (non-fiction) books are something that I never thought they were in the first place -- a means to linearly and completely copy information from its author, to the page, to my brain, in one pass. (Does anybody actually think this of books? I think not, myself.)
It then proceeds to tell me why it's bad at doing that, then gives examples for how lectures are also bad at it, but how lectures combined with textbooks, office hours and better structure can be turned into something much better (all suggesting we're leading towards "how to fix books") only to conclude that books are just fine as long as we don't think of them the way that I never thought of them to begin with.
Books are not one thing. Even non-fiction are not one thing. Some books on, say, mathematics or software engineering or even a specific programming language, are written to imbue the author's personality or inject humor, others are intended as a reference, and some freely mix a range of voices throughout.
This is how books are, have been, and SHOULD continue to be. Few people pick up a reference book with the expectation that they will read it front-to-back and become an expert in one pass - that isn't its purpose. Similarly, few will pick up a "beginner's guide" book and leave as an expert, but they WILL likely pick up the "beginner's guide" and "reference" books together and be able to use them in conjunction, over time, to learn a topic. Books are searchable and readable non-linearly, and repeatedly, in accordance with the learner's own needs, pacing, and supplementary methods (as the author describes).
This is how books work, and they DO work. That a learner needs to find a set of habits across multiple mediums to learn is how learning works, and is not a repudiation against books anymore than it is a repudiation against pencils or pens or paper.
Hidden within this article are really great, thought-provoking ideas around learning and how best to do it, but needlessly sacrifices books to do it. This IS a great "how to make learning better" article, that should have been approached as such by its author.
Something like “window.elements.myDiv”? I wonder why the decision to go straight to the root.
At any rate, Chromebooks sound more capable than I previously gave them credit for, enough so that they will now be part of my evaluation next time I upgrade.
Between the Framework Laptop now supporting Chrome OS and some of the info in this thread, Chromebooks and Chrome OS no longer seem like just the cheap Google Docs appliances for schools that I originally thought they were, which is pretty cool.
> Antifa itself is often discredited, but it's a response to the rise of far-right extremism.
And the right wing extremism is a response to the rise of left wing extremism. I could rebut the right wing extremism with reasons why it is a response to grievances that are not unfounded. I could cite the worst examples of racism, bigotry and violence on the left, and use that to justify measures that would silence anyone with left wing ideas.
Then, ultimately, you'd reply with why the bad things on the right are worse or less justified and the bad things on the left are more justified, and before you know it, both of us are in deep justifying extremists that (presumably) neither of us agree with, really.
> I'm not even a left-winger or whatever, I have my own thing
I don't identify as a left- or right- winger either, I have my own things that don't fit any mold. So, the real question for me isn't which side is more justified or more of a threat to the other, but rather - how is it that you and I find ourselves arguing on behalf of not just political parties, but the extremists in them. How is it each of us is relatively blind to the extremism on one side, but hyper aware of the other's?
George Floyd was a defining moment for me. For the first time in a long time, both left and right saw the same video, the same way. Some on the right would qualify their anger with "maybe there's an explanation", but few disagreed that the scene was unjust, and deeply disturbing. For the first time, we had a semblance of unity. Even some Fox News hosts condemned it. The right started to see the police problem for what it is.
So what happened? People wanted to help. They wanted to donate, and march in solidarity.
Cancel culture came for anyone who wanted to donate but questioned whether the official face of the protests, BLM (the organization) was the best place for corporations to be sending money in lieu of other efforts (and rightfully so).
Then riots happened. Groups of (often very white, very male, non-local) people started burning things down, destroying and looting buildings.
So where did that come from? From the peaceful protesters on the right who joined the left in solidarity? No.
Did it come from the peaceful protesters on the left? No.
People were angry, but they did not march down city blocks to burn down the very communities they were supposedly supporting.
But very quickly, the solidarity turned into Fox News saying "this is who the left is" and CNN saying "show me where protests are supposed to be peaceful". Before you know it, extremists successfully hijacked a positive movement and turned it against the very thing the movement was for. And the best part - those extremists are now defended by a population that doesn't even agree with their violence.
So where's the outrage from the peaceful protesters, against the extremists like Antifa who hijacked a peaceful movement? Well, it's there. In plain sight. MANY people who marched in those protests feel hurt and betrayed, but not just by Antifa - by the media and politicians, who STILL haven't even asked them what happened, or how they feel about it. The only way you would know they even exist is if you know them and speak to them personally (as I have).
Now, those peaceful protesters get to be pawns used in Fox News montages lumping them in with Antifa, and they get to be entirely ignored by CNN and MSNBC that spend more time covering up or justifying the violence than they do talking to anyone who was betrayed by it.
And that's the pattern. It repeated on the other side with the 2020 election protests, and it will repeat again, with one side or the other, sometime soon I'm sure.
There's a fray in this country that we're all unwittingly part of. Don't know who's doing it or why just yet, but it's there. And it's so hard to see the fray when you're in it, and it's even harder to pull yourself out of it, but pull ourselves out we must.
I’m really hoping they release a standard keyboard with a generic “super” key instead of a Windows logo at some point.
I always dismissed Chrome OS as a glorified iPad or Android tablet with a keyboard and desktop.
I’m mostly happy with my Linux-based HP dev one, but this is causing me to seriously consider a Chromebook (like this Framework variant) next upgrade.
If you do believe all of that in your comment, then I wonder if you’re victim to hateful disinformation intentionally meant to make it ok to censor, excommunicate, and violently attack a group of people with whom you would otherwise have minor policy disagreements.
Ironically, proving the need for “the other side” to have a parallel economy in the first place.
It’s mostly too bad because, if you believe all the things you said about desiring better education, better healthcare, higher wages being good; and that sexism, racism, and acceptance of business and political elites is bad, then you have a lot more in common with people on the right than you think, and are likely not seeing some aspects of the extremism on the left. (But not your fault - a function of the disinformation).
It’s too bad, because the extremists on both sides are also far more alike than they are different, and they are empowered when we’re against each other.
Not to say there aren’t elements of truth in your comment, too.
The funny thing about having a huge industry of hyper partisan right and left wing cable news and publications pumping out hateful caricatures all day, is that at some point it becomes somewhat self-fulfilling. A feature, not a bug, to be sure.
Essentially, all these frameworks ARE part of a cycle that repeat, and in time we all start to see it. Most of them just iterate on previous concepts, with some core concepts going way back to the late 60s, 70s and 80s.
What remains the same is the underlying Javascript language itself, and more importantly, fundamental software engineering and computer science principles.
Learn the fundamentals, and they will help you learn every new framework and language more easily, and in more depth.
If you really just want to get a job using JavaScript, then you might be best off browsing job postings to see what kinds of companies are hiring for which frameworks, and go from there.
But if your goal is literally to learn JS and find the right tech stack for you, unfortunately there is no replacement for learning the basics, and then picking a framework that looks interesting, and building something in it to see if it clicks with you.