Like what you see? Subscribe here and get it every week in your inbox!
Issue #196 - December 11, 2022
If you are looking for work, check out this month's Who is hiring?, Who wants to be hired? and Freelancer? Seeking Freelancer? threads.
Here are the top threads of the week, happy reading!
1. Ask HN: Developer abused “sign in with GitHub”?
Top comment by jrochkind1
I partially blame github for having very un-granular permissions -- a sign in with github ought to be possible without granting the site any permissions to do anything at all on behalf of your account, other than verify your identity via OAuth.
But I have no idea if that really is possible, and we have gotten used to granting sites permissions to github, specifically, beyond what they really need, because github often doesn't make it possible to give them what they really need. So we've been trained to be like, sure, whatever, okay, grant permissions.
(I used to complain to third-party sites when they were asking for more github permissions via oauth than they needed, and even say I woudln't use their service becuase of it. The answer was invariably "Sorry, github won't let us get the permissions we need without this overreach", and the times I had the energy to investigate, it looked like they were right! And we're talking really basic things, like read-only to a single private repo without write to all private repos in all organizations!)
However, on top of all that... this site is offering to automate solving captchas for you? Is there any non-sketchy use for this? I guess I am not too shocked that a site offering to take your money to help you bulk trick your way past captchas is... doing something else unethical too?
2. Ask HN: How is the job search coming along for people who got laid off?
Top comment by throw_aws_inter
I interviewed for 1.5 months (!!!) for AWS for a senior position, went through all the stages through the end. Then silence. I kept emailing the recruiters responsible for my interview, I kept getting out-of-office replies. Then I contacted some higher ups I found, told me they assigned my interview to other recruiters. No replies from them though. I have emailed them a bunch of times including the higher up. Then the news about Amazon layoffs got out; I presume they all got fired?
What a gigantic waste of time. Tons of stress for 2-3 months for nothing.
3. Ask HN: What is the best income stream you have created till date?
Top comment by LiquidPolymer
Probably not relevant to the younger set here on HN: I became obsessed in the late 90’s with using a camera to photograph subjects and events that are hard to observe with the naked eye. (Examples include: spotted bats photographed in flight, or red tree voles that only live at the tippy top of Doug fir trees, or nocturnal genets photographed in arboreal habitats). I loved the challenge of the work.
I grew up poor. So I had to figure out how to finance this work up front. It was a true obsession and I would have probably gone completely broke if not for the fantastic interest my work generated. I was licensing the work for good $$$.
Cut to now: I’m still fascinated with this type of photography. But my work these days involves social media content generation. Since I hate being the center of attention, I’m lucky that my clients just want content (and leave me out!).
But this early work just keeps selling. The subjects were so difficult to capture that I guess others have not really pursued the same path? I’m probably just a lucky fool.
If I were to die tomorrow, my family would still have good income from just this early work. I just can’t believe how this played out for me. I’d like to think it was a clever strategy. But no.
Coming from a family riven with poverty, addiction, and early death - I’m just astounded. I’ve already outlived every male member of my family in the last three generations. I hope to set my child on a different path thanks to this lucky break of timing + opportunity.
4. Ask HN: Best books read in 2022?
Top comment by Brajeshwar
As parents we wanted to be one of the better ones. A while back, we started with Bringing up Bébé, and since then learnt How to Talk so Kids will Listen and Listen so Kids will Talk; we were even Prepared while Reviving Ophelia. This year, we realized, we want to just settle on being A Good Enough Parent.
1. https://www.amazon.com/Bringing-Up-Bébé-Discovers-Parenting/...
2. https://www.amazon.com/How-Talk-Kids-Will-Listen/dp/14516638...
3. https://www.amazon.com/Prepared-What-Kids-Need-Fulfilled/dp/...
4. https://www.amazon.com/Reviving-Ophelia-Saving-Selves-Adoles...
5. https://brajeshwar.com/2022/books/
6. https://goodenoughparenting.com/
5. Ask HN: Reading material on how to be a better software engineer?
Top comment by markshead
A few books that I've found useful:
The Goal - Eli Goldratt - It is a novel about optimizing a factory, but it is immensely valuable in thinking through what are the actual constraints on your team's ability to deliver software and how do you fix it without making other things worse. The Phoenix Project is kind of a modern retelling, but I'd start with The Goal.
The Principles of Product Development Flow - Reinersten - Great for thinking deeply about how you deliver value through your system and the tradeoffs you are making in what you choose to focus on next. Once again it isn't specific to software, but very relevant.
The 5 Dysfunctions of Teams - Lencioni - Common team problems and what to do instead.
Influence: Science and Practice - Cialdini - How to get people into agreement so you can move forward--a skill that can be used for both good and evil.
The Little Schemer - Friedman and Felleisen - It is kind of hard to describe why this would be useful, but I felt it made me think more deeply about what it means to program a computer in ways that indirectly supported the topics you mentioned. Or maybe I just happened to work through it at a point in my life when I was growing in those other areas too.
6. Ask HN: Are things getting more convenient but less satisfying?
Top comment by CrypticShift
Yeah... sitting in front of screens all day makes us forget we are highly developed animals first, then rational minds second (or third). Out “lower” instinctual selves who crave that sensual/physical experience are never fully satisfied/soaked within that disembodied life.
Also, Modern civilization is making a lot of things "frictionless". Less friction is indeed more convenient. However, it makes us forget that a lot of "real-life" frictions (difficulties, challenges, Human interactions...) are what make us grow. Our "higher selves” who crave that "personal growth" are never contented with that bland/rippleless experience.
So, we are left in the middle in superficial satisfaction and security, with deep fulfilment (both lower and higher) always out of reach. I wonder if the "mental illness" epidemic has something to do with this, as a psychological mechanism to get us out of our virtual stupor.
7. Ask HN: Software architects – what’s your typical day look like?
Top comment by azalex
The essence of my job as an architect is commonly described as a 'professional negotiator', implying that my primary responsibility is convincing people into doing the right thing (tm). My time is typically split between two main things: meetings and research/design work.
On a typical day, I have 4-6 meetings with different groups of people. Some will be solution design discussions with engineering teams where we try to figure out how a particular challenge will be solved together. Others will be with product managers, talking about feasibility, cost and time estimation. Yet others will be with senior directors about long term strategy and infrastructure. Finally, a very important part of the meetings is mentoring. Knowing something is valuable, sharing that knowledge is invaluable.
While this may sound like a lot of meetings (and engineers typically abhor meetings) they are typically very useful and very rewarding.
The remaining time I typically spend on doing preliminary research, design, documentation and every now and then even coding, which I thoroughly enjoy.
8. Ask HN: How to get back into AI?
Top comment by jdeaton
I am an ML researcher working in the industry: by far the most effective way to maintain/advance my understanding of ML methods is implement the core of an interesting paper and reproduce (some) of their results. Completing a working implementation really forces your understanding to be on another level than if you just read the paper and think "I get it". It can be easy to read (for example) a diffusion/neural ode paper and come away thinking that you "get it" while still having a wildly inadequate understanding of how to actually get it to work yourself.
You can view this approach in the same way that a beginner learns to program. The best way to learn is by attempting to implement (as much on your own as possible) something that solves a problem you're interested in. This has been my approach from the start (for both programming and ML), and is also what I would recommend for a beginner. I've found that continuing this practice, even while working on AI systems professionally, has been critical to maintaining a robust understanding of the evolving field of ML.
The key is finding a good method/paper that meets all of the following
0) is inherently very interesting to you
1) you don't already have a robust understanding of the method
2) isn't so far above your head that you can't begin to grasp it
3) doesn't require access to datasets/compute resources you don't have
of course, finding such a method isn't always easy and often takes some searching.
I want to contrast this with other types of approaches to learning AI with include
- downloading and running other people's ML code (in a jupyter notebook or otherwise)
- watching lecture series / talks giving overviews of AI methods
- reading (without putting into action) the latest ML papers
all of which I have found to be significantly less impactful on my learning.
Top comment by gyulai
If you get into it now, you'll probably be on the losing end of a pork cycle [1].
All of the hype is creating overinvestment on the side of "producers" of AI. All that overinvestment will mature at roundabout the same time. When it all hits the market at the same time, they'll have to fiercely compete with each other at the same time as having to deal with "reality" kicking in, i.e. learning the difference between hype and real demand to create real value for real paying customers. There will be massive oversupply.
You'd have to find some way to be short that thing, i.e. to somehow take the other side of that trade.
You want to be on the receiving end of that investment with no exposure to the crash that will follow (if any). For example, if you had an AI background now, you could start an AI school. Your customers would be people taking the hype at face value. You'd take their money now, but when it later turns out that the skill isn't worth in the job market what they thought it would be, you're not exposed to that. ...that's what acting school does for wannabe Hollywood superstars. Running an acting school for wannabe stars is definitely a better business than trying to actually be a star.
[1] https://en.wikipedia.org/wiki/Pork_cycle
10. Ask HN: Are there things that Flash did that we still can’t do with today’s web?
Top comment by irrational
Maybe there is a vector animation tool that is as easy to use as Flash was, but that fact that we rarely see vector animations like we did back in the day makes me think not.
I used to work with a group that created training materials using Flash. We had a bunch of animators that knew nothing about coding, but they could produce all of these amazing animated videos using Flash.
They could also produce interactive animations. One job we did was creating 3d renderings of printers. The printers could be torn down in the flash app to the smallest screw. A technician could choose what they wanted to do to the printer, and the flash movie would show them step by step in full animation what to do. At any time they could rotate the printer in all an axes to view different angles. It was amazing. And it was animators who knew nothing about code that built it all. The things they could do you just don’t see anymore.
I remember another project we worked on that had these mini games you could play in place of being multiple choice quizzes.
All of that is just gone. There was so much animation and interaction and fun that has been replaced with boring, text, images, and videos.
The best part was, it was all vectors, so the file sizes for even long animated movies was incredibly small. Back in those days we had very low bandwidth, but flash worked great. We had retailers in Asia that consumed our content no problem. Now our content is mostly text, images and videos. Those same retailers have higher bandwidth, but really struggle because the files sizes are enormous compared to flash.