dlkinney | 5 years ago | on: Twitter Bots Are a Major Source of Climate Disinformation
dlkinney's comments
dlkinney | 5 years ago | on: Can't uninstall Adobe apps without an account (2018)
You'll probably have to spend some time playing with it to find your "look", but once you do, Lightroom can't come close.
That said, it's missing a great organization/sorting workflow and painted adjustments, so if you rely on the latter or expect the former in your RAW processor, it might not be for you. A fantastic (commercial) alternative is CaptureOne. It's the Rolls Royce far as I'm concerned. Strongly recommend you stay away from Darktable, because it's close enough to Lightroom (but not as good) that you'll get frustrated.
Hope this helps!
dlkinney | 5 years ago | on: GNU Radio 3.9
dlkinney | 5 years ago | on: 10 years-ish of Elixir
And by that same line of thought, it's frustrating as a functional language given its almost complete absence of built-in monadic types and helpful sugar to use them. Instead of `Maybe`/`Option`, for example, you pass tuples around tagged with atoms. This wouldn't be the end of the world except that...
There's no static typing. Which means that `match` blocks can't enforce completeness. This isn't a huge deal, but for a dynamically typed language, it's surprisingly cumbersome to introspect at runtime. Languages like Ruby make such things first class, such brings me to...
Elixir is nothing like Ruby. With the exception of `def`, `unless`, and `do`, there are nary a few similarities. This isn't necessarily a negative, but the whole notion that Elixir and Ruby share syntax is only barely—and completely superficially—true. In large part, this is because...
There is no method-style syntax. That's not uncommon for a functional language, but it's problematic when the standard library is hugely inconsistent. Is the function you want in the `List` module? Or the `Enum` module? Or is it part of the `kernel`? Hunting around for the right module is a pain, but not as bad as...
Inconsistent naming of functions. Sometimes they're fully spelled out; other times they're abbreviated. And if you're really unlucky, if it's in the kernel, you can expect 1970's Unix-style abbreviations that are so short to be unreadable and have no consistency in how they're formed. US state abbreviations follow more strict rules than Elixir kernel function names. At least one thing Ruby got very right were easily-guessable method names.
There's a lot of good in Elixir; don't get me wrong. But I've spent over a year in it and keep stumbling on very un-aesthetic issues. For such an otherwise wonderful developer experience, these pain points ring loudly.
Frankly, unless you need a lot of parallel things to happen behind the scenes in real-time, I just don't see much use case for Elixir. Its ability to fail and keep going (a major selling point) is great, except that I find it too easy to write code that fails, which can bubble up and create inconsistency in its state. I much prefer something that will help me avoid failure in the first place (Rust us great for that), or something that lets me code fast and loose and makes that experience really enjoyable (like Ruby).
I think I'm alone in these criticisms, however, because I never really see anyone talk about them, so take this all with a grain of salt. I have used a ton of languages in my 25 year career, and I had a lot of hope for Elixir. But, frankly, I just don't get it.
For highly parallel networked applications, it makes sense. For very small things that would otherwise need external service dependencies (Redis, sqlite, etc), it makes sense.
But if your focus is any other use case, I really struggle to justify its adoption. It's not as fast as advertised for anything non-realtime parallel. (Go, Java, Rust, et al all provide much faster alternatives.) It's not as quick to whip up for medium sized projects. (Like Rails.) And it's not as fault tolerant as something like Rust, which can help you avoid the faults in the first place.
LiveView—the latest "must have" for web development—is likewise disappointing, in case that intrigues you. Single-language back- and front-end development sounds great. But it's just back-end streamed to the front end, which is problematic for any significant latency. None of the benefits of front-end except not refreshing the page. It's a fun (and very impressive) toy, but you get almost none of the benefits of a real front-end app. (Such as UI changes while the data is loading.)
While I only have a little experience with LiveView, I have plenty experience with latency-laden server-side echoing to know that when it breaks down without the client doing its own best-guess updates, nobody will have a good time.
Maybe I'm just salty because I expected the Elixir experience to be more than it turned out to be. And I do enjoy some of the things it forces you to do, by virtue of its being a functional language. But at the end of the day, I personally find its warts to be significant and not worth dealing with outside of very specific use cases that it uniquely handles very well.
Your mileage may vary, but I would ask yourself: does my application need lots of real-time, parallel functionality? If the answer is anything short of "hell freaking yes!", then I would look elsewhere for serious development.
I appreciate all the hard work Jose and Chris (and of course all others) have put into their respective portions of the Elixir experience. But I think it was oversold. And I think the number of packages that haven't been touched (or issues responded to) in over 3 years may indicate that others struggle to find its value in many areas in which it was advertised to be a game changer.
I want to like it.
I really don't like it.
dlkinney | 5 years ago | on: A Polar Vortex collapse sequence has begun
Those blankets have practically zero thermal advantage, and really are only good to deflect wind, rain, and snow. (As well as signaling.)
Please keep a large wool blanket in your vehicle if you are in a location that threatens extreme cold with the inability to walk to safety.
I would hate for someone to be stuck in a tight spot and realize the useless thermal properties of those blankets the hard way.
dlkinney | 5 years ago | on: David Fincher, the Unhappiest Auteur
While I immensely enjoy his films, it seems that he has great distain for the fact that filmmaking is a community effort, and simultaneously doesn't have it in himself to fight for his choices, so he just eliminates choice where he can.
Watching his progression over the years, I feel like the penultimate David Fincher film would be sans-actors and camera movement, followed by a film of raw script text pages with his red marker notes scribbled on them.
dlkinney | 5 years ago | on: Ask HN: What's a side project you built to make money that hasn't?
Yes, they're cheapskates. And there's a ton of them, so initial sell is high touch. But there's been a lot of modernization among them, yet their client-facing web presence really isn't being served. So once you've got them, I'd expect to be able to hold on to them--low-touch--for a very, very long time.
Just an idea...
dlkinney | 5 years ago | on: Microplastics found in the placentas of human fetuses
I'm not sure how this accurate description of the entire history of human society is supposed to refute their hypothesis?
dlkinney | 5 years ago | on: New York Times retracts core of podcast series ‘Caliphate’
The criticisms, however, are against their politically loaded decisions to run certain content in the absence of legitimate sources of truth. If this were an occasional thing, sure, accidents happen. But this has become the modus operandi of what once was the paper of record.
Between the absolute backpedaling of the 1619 Project, copious amounts of Russian influence narrative, and countless "anonymous sources" that turn out to be nobodies or absent integrity, the NYT is an embarrassment to journalism.
They do what you described, though: they build in back doors into their reporting so they can legitimately claim that they weren't "wrong" on a purely logical--but functionally bullsh*t--standing.
No, I don't believe they deserve "praise" for "courage and integrity", because they've left those--and other markers of high character--in the past as they cry their death throes in the changing media landscape.
dlkinney | 5 years ago | on: IMAP API – self hosted daemon to access IMAP and SMTP accounts via HTTP API
If it's the latter, Radicale is awesome.[1]
dlkinney | 5 years ago | on: Lessons from Running a Sale That Earned 3 Month's Profit in a Week
A "sale" is a "misleading advertisement" if the product never actually sells at the "original" price.
Note that this is distinct from Amazon's stricken price, which is the suggested price. You'll see that none of Amazon's own products have a stricken price unless it's actually on sale. Since Udemy defines their own pricing, this forgiveness does not apply.
They're ripe for a lawsuit, frankly.
dlkinney | 5 years ago | on: FCC to require email addresses on applications for amateur radio licenses
We have government-funded libraries all across the country that provide internet access. While I believe that mail should always be an option, ease of access is something that I think is over-valued when it comes to government.
That's not to say that I don't appreciate convenience. Convenience and a broad range of availability are good things. But at the same time, I don't hold the belief that government owes us convenience.
So with that said, and excepting arguments of convenience of availability of internet, I think it's hard to make the case that someone may be excluded just because they don't have internet. Used to be some people had to ride half a day on a horse to conduct some government business. To me, that is the baseline, and anything beyond that is a privileged blessing, NOT a necessity.
I know this is a very unpopular opinion.
dlkinney | 5 years ago | on: Updating the Git protocol for SHA-256
I understand the compromises he made in order to make it less ambiguous, but regular users come across hashes sometimes, and unless you know it's his encoding, they're (often) smart enough to know that some characters look like others. So, when they go to recite the encoded value, they're still going to struggle "is that a 0 or an O?" etc.
We may know it doesn't make a difference, but someone who doesn't know it's explicitly his encoding (and the parameters he transposes) is still going to get hung up.
Lastly, the removal of "u" only prevents 1.5 offensive words from showing up, but I guess he chose it because he had to get rid of some letter to make it base32.
I think a base ~32 by removing all ambiguous characters and adding a non-separator punctuation mark would be ideal, frankly.
If we're worried about swear words then also remove the vowels and add 4 more punctuation mark.
IMHO
dlkinney | 5 years ago | on: Is Dark Mode Such a Good Idea?
They use full white and full black for all modes. As we know, dark theme is typically white on dark gray (or equivalent), not pure white on pure black. I can't think of any dark mode that uses pure black. (AOSP, IOS, macOS, etc.)
This alone invalidates the study, because it doesn't reflect the real world. Science is only as good as it is rigorous, and if it fails to model the real world, then it's not very good.
Science, these days, seems to have become a faith based system, because most people don't usually review the content of the studies.
That (and bad science, like this study) is a shame.
1: https://journals.sagepub.com/doi/abs/10.1177/001872081351550...
dlkinney | 6 years ago | on: How KitchenAid and Le Creuset Took over Kitchens
But if you're not doing a tomato sauce or tomatoey braise, then I can understand shooting for a less expensive but otherwise just-as-useful plain cast iron.
dlkinney | 6 years ago | on: API design: Which version of versioning is right for you?
https://www.youtube.com/watch?v=P0a7PwRNLVU
It might feel a bit aimless at first, but he pulls it together about halfway through. By the end makes good, insightful points. Definitely worth the watch.
dlkinney | 7 years ago | on: Web Scraping with Electron
I think you've given my weekend some purpose. Lemme see what I can pull together...
dlkinney | 7 years ago | on: Ask HN: Who wants to be hired? (March 2019)
Remote: Preferred
Willing to relocate: Not far
Technologies: Linux, Ruby, Bash, HTML5/CSS3/JS, C/C++, Perl, C#, PHP, SQL, LUA, Python, Ansible, Windows, macOS; some: Elixir, Go, Rust
About: 20+ years experience developer and administrator; able to pivot to whatever technologies necessary; prefer--but not limited to--open source technologies, as a matter of principal
Resume: https://resume.kinney.cc
Email: resume at daniel dot kinney dot cc
dlkinney | 7 years ago | on: A Complete Program
dlkinney | 7 years ago | on: Ask HN: How to RTFM?
It was a point several years ago that I was looking for a "better" solution to something I was doing. A bunch of Stack Exchange answers on the topic each had a different way of doing it, and each was as complicated as my own solution. Over the course of years, people tried to make the solution better.
Then I noticed the very bottom answer, below some dozen others. Posted about a month before my search.
It was one line.
The individual just posted the one-line answer and a link to the manual.
It was part of the standard library.
And had been SINCE INCEPTION.
It was at that point that I began to RTFM. There are good manuals and there are bad manuals. But one thing I've noticed is that for most libraries, it is absolutely invaluable to be able to have a high level picture of what's available. It has completely changed the way I code, now.
First, read a few hello world tutorials so I can wrap my head around the gist. Then RTFM. Then maybe read a book about it if I want a good idea of best practices. Only then do I search SE or other online sources.
Which I now rarely have to do, for the things in which I RTFM...
- it's 50/50 accurate picking actual bots I know I follow
- the more simple the reading level, the higher it scored
- however, extremely heady accounts also score high
- the farther right/left the account goes seems to up the score a little
- accounts that quote authors frequently score very high, even if they're human behind them
- everything from Chinese state media scored higher than anything
- everything that was frequently highly critical of China scored extremely high
- most Trumpers and Antifa I follow had very low scores (but most are high-up/origin accounts)
- most news organizations from both sides scored middle range, including known propagandists and "reputable" organizations
- accounts from both sides of the COVID discussion were mostly low
Hard to say, but my best guess is "low effort" is the defining factor. Only exception is the pro/anti-Chinese stuff, which is definitely a mix of real people and bots.
I keep pretty good tabs on the accounts I follow and I think I'm pretty good at determining who is "a real person with real feelings saying real things they really think" and bots, and from this analysis, I have zero faith that this tool has any modicum of reliability in a research setting.
I think it's possibly accurate enough to say "yes, this is definitely a human", but totally fails to identify bots. Thus, any research that uses this tool as a measure of bot influence is way off, because there are way too many false positives. Which I guess is a good thing for anyone who wants to say, "look at all these people being suckered by all these bots!" which is pretty unscrupulous.
YMMV