There are 3 primary decisions Google made that click with me, while Apple's choices are a mystery to me:
1: When I put a Pixel on a table, it sits there stable. Because the backside is symmetrical. When I put an iPhone on a table, it wobbles.
2: When I sort my photos on a Pixel, I sort them in folders. The "camera" folder is where the unsorted photos are. When I sit in a bus or in a cafe, I go through it and sort the new photos into folders. This seems impossible on iPhones. Everything stays in the main folder forever. You can add photos to albums, but that does not remove them from the main folder. So there is no way to know which photos I have already sorted.
3: On Android I can use Chrome. Which means web apps can use the File System Access API. This makes web apps first class productivity applications I can use to work on my local files. Impossible on iPhones.
I'm sure people who prefer iPhones have their own set of "this clicks with me on iPhones and puzzles me on Pixels" aspects?
Is this a "left brain vs right brain" type of thing? Do most HNers prefer Androids?
https://www.trueup.io/job-trend
I have never gone to Indeed to apply for a job.
Mocks come from a place where logic is heavily intertwined with IO. It means your code is so coupled that you can’t test logic without touching IO.
IO should be a dumb layer as much as possible. It should be Extremely general and as simple as fetching and requesting in the stupidest way possible. Then everything else should be covered by unit tests while IO is fundamentally not unit testable.
If you have a lot of complex sql statements or logic going on in the IO layer (for performance reasons don’t do this if you can’t help it) it means your IO layer needs to be treated like a logical layer. Make sure you have stored procedures and unit tests written in your database IO language. You code should interface only with stored procedures as IO and those stored procedures should be tested as unit tests in the IO layer.
Tech jobs do not abound right now, so if they are going to do this, the moment is now.
The discussion if this is the right move or not ( for the future of the company) is one we could have, but in a way it’s like the peasants discussing the latest drama in the Royal family, at the of the day: who cares? They’ll be fine either way.
You'll cross-pollinate across functions. Or at least increase the chances of that happening. Not saying that's worth the tradeoff. But my time in the office often finds serendipitious value in random off-team conversations, not scheduled time.
There are, however, a few times when getting together and discussing something in person is valuable, but this is no more than maybe a couple times a month. I can definitely see this being different for other roles.