HNHacker News
TopNewBestAskShowJobs

ritchiea

4,724 karma · joined November 10, 2011

Developer & Writer

http://andrewritchie.info

ritchiea@gmail.com

submissionscomments
ritchiea··on Google told its scientists to ‘strike a positive tone’ in AI research
When scientists write results sections and abstracts they strike a tone. They make an argument for why the raw data is meaningful. Scientists interpret data, which involves a layer of human analysis that is not objective but is attempting to find the correct language and narrative to describe the results of an objective, quantitative process. Outside of the methods and data sections, academic science writing absolutely has to strike a tone. And especially when you are seeking grants and career progression one of the tones you have to strike is to highlight the importance of the work.

Once in a science course in college, I had to present a paper to my class. I tried to present it "objectively" as you would describe it, avoid striking a tone or making judgements. My professor told my presentation was technically correct but failed to highlight the broad significance of the research, which comes from tone. Science writing requires selecting a tone of voice.

ritchiea··on Write code. Not too much. Mostly functions.
What's the difference between writing OO code that depends on internal state and writing a pure function that expects an argument that is a data structure of a specific type (and thus has internal data that could be different)? Is the pure function no longer pure if the argument is a data structure thats complex and the values within the data structure dictate the outcome of the the function? Or is it a pure function because if you pass the same data structure with the same internal values the function will return the same value?
ritchiea··on Ruby 3.0.0 RC1
You're correct, Rails is not Ruby. But in my experience 80%+ of the Ruby ecosystem is Rails. But now I'm even more curious what problems you encountered with Ruby because I find it to be an excellent scripting language, especially if performance is not a major concern.
ritchiea··on Ruby 3.0.0 RC1
Interesting, I'd say the opposite. In a Rails app that was written consistently with the styles and APIs documented in the Rails docs I have never been more productive. In other micro-framework type environments, regardless of the language, Ruby/Sinatra, Python/Flask, Javascript/Express. Most codebases I've encountered are a mess of inconsistencies introduced by various developers over the years. With a lot of the mess, effectively re-writing the core features of Rails and it's most popular gems.

Rails, if done correctly, is a remarkable tool to allow developers to focus on the business logic and UI of their app and forget about the "filler features" that pretty much every app needs implemented. On the other hand if you write Rails code without reading the docs and re-invent the wheel rather than doing things the Rails way, essentially running an app in the framework without using the framework methods, you can create yourself a monstrous unmaintainable codebase like no other.

ritchiea··on The Abolition of Work (2002)
The comment above yours cites Steven Spielberg and Steve Jobs. Clearly the vast majority of us don’t have the autonomy at work or the compensation that those Steves have/had. There are many types of work that people enjoy and not just in prestigious fields. The problems with work arise out of issues such as:

- Businesses being incentivized to pay as little as possible

- Workers not being treated with dignity, not allowed enough time to recover from being ill or take vacation to mentally recharge

- Workers being pressured to maximize for output rather than their own experience at work

Of course work can be great for some people, but it’s intentional blindness to look around and tell the worlds workers most of us are in a position where work is fulfilling rather than a demanding stressor that asks more of us while corporate entities attempt to cut pay and benefits. You can call it overemphasis on short term thinking or a systematic failure of capitalism. But work is demanding and often even unforgiving to most workers.

ritchiea··on Shitlist Driven Development (2016)
It's a shame people don't actually read the articles because, assuming the article is actually insightful, you can have better discussions after the community has actually read the article.

And in the case where people don't read the article and just read the headline, many comments have nothing to do with the article, and end up discussing a less interesting misconception of the submitted article's title/headline.

It's great to be generous with our interpretations of comments here on HN. But I would like to push for a higher standard of discussion, which has always been the draw of this community, particularly for technical articles (and this is actually a high quality technical article!). So I don't think I'll ever be happy being generous to a low value comment that re-states an opinion from the submitted article without adding anything or even without adding much.

ritchiea··on Shitlist Driven Development (2016)
Agreed. There's been a lot more "commenting without reading the article" here recently than in the past. So when someone comments on an article without anything in the comment that refers back to the article and merely offers the exact advice that was in the article without further analysis or insight:

1. That gives the appearance of a user who hasn't read the article

2. Even if the user did read the article I'm not sure what their comment adds to discussion of the article. For comparison, imagine participating in a conversation with a few friends in real life, friend X says "It's a good idea to write tests for your code," then friend Y replies "It's a good idea to write tests for your code." Usually the way people discuss things is to reply or offer addendums to the original idea. It's not a rule, it's just good conversation.

ritchiea··on Shitlist Driven Development (2016)
This is literally one of the topics covered in the article and the author advocates for the same solution, documenting the alternative in the error/deprecation message...
ritchiea··on Earnestness
Exactly, there’s nothing inherently boring about being earnest. You can be earnest and boring but you could also be earnest with a good sense of humor and an interest in film history or software engineering. I’m not going to go all in on pg’s earnestness essay but it’s a positive trait and if you have genuine interests, there’s a good chance being earnest makes you more interesting when discussing interests because you are less likely to be invested in impressing other people with your interest. If you’re earnest your interests tend to scratch your itches of curiosity. But if you are earnest and uncurious then yes you may be boring.
ritchiea··on Employees are leaving Facebook and torching the company in departure notes
There are plenty of rubes on the left but I don’t bitch about them nearly as much because, at least in the current political climate, they aren’t active barriers to the changes I’d like to see in America. I’m not someone who believes left and right are intelligent & enlightened vs ignorant & foolish. Though I do believe the right to be more cynical and openly self interested.
ritchiea··on Employees are leaving Facebook and torching the company in departure notes
For the majority of Americans on HN or employed in tech or finance or some other salaried office work, the sky isn’t falling, we’re doing well. but we’re also a minority of Americans.

Walk through towns & small cities in Indiana, Kansas, Florida, Alabama. In a lot of these places the sky is falling, there are few jobs & high rates of opiate abuse. There isn’t much of a social safety net. Unfortunately many of these people vote against their own financial interests, and honestly the democrats also aren’t addressing the roots of inequality sufficiently. The United States is basically divided between those of us who are doing well and those of us for whom the sky is at least looking brittle. That’s the issue putting pressure on society today.

ritchiea··on Heavy is the Head that wears the AirPods Max
But you can get good studio monitoring headphones for less than half $550.
ritchiea··on SpaceX Starship Users' Guide [pdf]
And Elon Musk is not much of a philanthropist that I am aware of but is a guy who claims to care about the future of humanity so he builds luxury cars & rockets instead of doing things for humans alive today with difficult lives. Gates wasn’t always the Gates of today but whats good about Musk outside of the people who fantasize about living his life? The degree to which he’s any better for humanity than literally any other rich businessman seems dependent on buying into his marketing uncritically.
ritchiea··on SpaceX Starship Users' Guide [pdf]
What has Elon Musk done for humanity? He got extremely wealthy from a payment processing website. Now he runs a company that makes luxury cars and another one that is or aims to be a global military arms logistical network [0].

If I had to pick amongst the exorbitantly wealth, without any serious research I'd say we need more people like Bill Gates.

0. https://futurism.com/the-byte/spacex-building-military-rocke...

ritchiea··on These are called opportunities
Beyond it being "hard" to fight bloat, it's against the individual interests of most of the company. Let's say you have a job at Google or company X or wherever, you're a PM/dev/designer/manager/productGuy. You don't get promotions and earn more responsibility for saying "we don't need that feature." You get promotions for that cool new thing you shipped and hey if it ruins the UX or slows the app down or whatever, who cares if it's UX or your career what do you care about UX your career is dependent on MORE bloat.

Incentives are totally misaligned but I can't imagine the situation will change anytime soon.

ritchiea··on I Hired a Freelance Editor for My Blog (2017)
Is TTS actually useful for editing writing? I haven't tried TTS on my mac in years but my experience with TTS is it's very utilitarian. It will certainly speak the words you input but the best use of reading your own writing aloud is to get a feel for how the text sounds in a natural human speaking voice. Because if it sounds good in a speaking voice, it will sound good and feel correctly paced and worded to a reader.

TTS doesn't interpret pacing and anticipate the way a thoughtful human reader would read text aloud. Which defeats much of the purpose of reading your own text aloud. But TTS should help you find grammar mistakes, typos and missing words.

ritchiea··on Hire people who give a shit
I generally like this advice but also worry that unsaid number 3 is “only hire people without boundaries who will fully devote themselves to your company until they burn out.”

I’d love to see more companies that give you a reasonable work life balance so that they can continue to benefit from you giving a shit long term. Let me be clear I know nothing about Scale in particular but I have seen other places where the insidious version of the advice here becomes a hiring funnel that churns through passionate workers burning them out.

ritchiea··on Ask HN: How to effectively communicate results of my work to non-engineers?
No good company wants to lose or alienate a valuable contributor, especially not a valuable technical contributor. If they tried to screw him then he’s lucky to be out. And if he is assessing the situation correctly then he’s asking the right questions so he can grow in his career.
ritchiea··on Matestack – Reactive UIs in pure Ruby
Wow we must be in separate Berlins because I see tons of JS backends. My impression is Javascript & Python are competing for most popular backend.
ritchiea··on Faker.js Has a New Godaddy
Related sentiment: what a sad state of affairs that an industry whose productivity is coupled with FOSS software, struggles to find solutions to support FOSS.
ritchiea··on YouTube adds ads but won't pay all content-makers
Vimeo?
ritchiea··on The Few, the Tired, the Open Source Coders
Maybe but I've reached out to open source maintainers to offer them contracting work focused on their library and they have pretty much unanimously replied that they are too busy. And we were willing to pay above market rates to work on a product that has a significant global user base. There's definitely culture, process & funding problems around open source but for the most part being an open source maintainer seems like it's very good for your career.

I suspect being an open source project maintainer is a self selecting grind.

ritchiea··on Chronic alcohol use reshapes the brain’s immune landscape
Safe from what exactly? I don’t want my life to be exclusively a maximizing game for length of life & wealth. I’m going to die to matter what, I certainly don’t want to become reliant on alcohol or have an abusive relationship but I would much rather do the things I enjoy with my life than live the most cautious, healthiest life of avoiding fun that is a little bit bad for me.
ritchiea··on Git is too hard
My team works on feature branches that get merged to master. Only master ever needs a git pull and you never work directly on master. Every team I've worked with over the last ten years has done some version of this work flow with small deviations.

Your uses for log sound legitimate but usually they are resolved over other communication channels (in person or over slack or in release notes) on the teams I've worked on.

ritchiea··on Git is too hard
I think of log, cherry-pick, stash & blame "quarterly use" commands rather than "daily use" commands. log maybe monthly, the rest quarterly unless you're doing something wrong.
ritchiea··on Being Glue
Why did you immediately assume the software engineer the original comment was theorizing about would not have intermediate knowledge of the codebase?
ritchiea··on On Learning Chess as an Adult – From 650 to 1750 in Two Years
Yea I don't think the response above you actually understood my comment. I do play chess somewhat seriously and it's similar mental labor as programming. And I can only do so much more serious mental work after a day at work coding. And I definitely could not commit to two hours of serious chess study every day. Maybe 30-60 minutes of games & puzzles.

Playing a sport is completely different from playing chess, the physicality of a sport is at least different type of challenge.

ritchiea··on On Learning Chess as an Adult – From 650 to 1750 in Two Years
Studying chess isn't leisure in the same way that watching TV or reading a book or playing a sport are leisure. If you are studying chess with the intention of actually improving your game it requires a lot of mental energy. For a lot of people, it not most people, it would be closer to more work than leisure time.

I also play chess but I don't think of chess as time to unwind. It's definitely fun, but requires a lot of focus and I have to stop playing a few hours before bed so I can actually unwind.

ritchiea··on Why not use GraphQL?
Yes exactly! GraphQL would be great for a huge company with multiple front end and backend teams that are a challenge to communicate between. It standardizes and simplifies things for that massive organization and alleviates the pain of communicating API changes across such a big organization.

If you are one small to medium sized team. Or honestly even 2 small to medium sized teams, GraphQL is overkill. The people working on the API for your frontend are either right next to you, or even you yourself. So there’s no need to introduce this big backend framework with a strict API. There’s just little to no process or code quality benefit for small teams. Unless someone on your team is absolutely terrible, and that terrible person is going to cause problems anyway.

ritchiea··on Why not use GraphQL?
This is a refreshing read, every time I ask someone what they like about GraphQL or read an article about the benefits of GraphQL I get the same boilerplate, non-answers that made me avoid GraphQL on my latest app after working with it on 2 freelance projects over the last couple years.

The tooling around Apollo is pretty good, and that’s great but so many of the “why GraphQL” arguments are either short sided, assume you are doing REST badly, or imply you are an organization that is much bigger and has scaling problems most of the projects I’ve worked on do not have. So far I am very happy I went back to a REST API.

Oh and here’s another REST benefit: when working on my REST API I spend most of my time thinking about good API design and testing practices. When working with GraphQL I spent most of my time figuring out how GraphQL ecosystem libraries worked. I would much rather spend my time thinking about how to do the job well than how to glue together an ecosystem of tools that someone else designed. Admittedly this is a very subjective line to draw, for instance I loved Rails and some people make the same criticism of Rails that I make here for the GraphQL ecosystem.

← PreviousPage 3 of 30Next →